Laravel5性能优化技巧

Laravel5性能优化技巧

大家好,又见面了,我是全栈君。

分享一些 Laravel 开发的最佳实践,还有调优技巧,后面陆续整理中

1、配置缓存信息

使用laravel自带的artisan命令,将所有config里面的配置都缓存到一个文件里。

php artisan config:cache

所有缓存信息会被 bootstrap/cache/config.php 文件里,也可以用以下命令来删除该缓存信息:

php artisan config:clear

当配置信息修改的时候,一般直接执行 php artisan config:cache 即可,因为它会自动先执行 php artisan config:clear ,然后再执行 php artisan config:cache 。

2、路由信息缓存

当路由越来越多的时候,特别是在大型项目中,路由缓存的效果很明显。

php artisan route:cache

所有路由会被缓存到 bootstrap/cache/routes.php 文件里,如果要使用路由缓存,那么所有的路由就不能使用闭包即匿名函数的形式了。同样可以用

php artisan route:clear

清除路由缓存。

3、类映射加载优化

 optimize 命令把一些常用的类缓存到文件里,通过减少文件的加载,提升性能:

php artisan optimize --force

会生成 bootstrap/cache/packages.php 和 bootstrap/cache/services.php 两个文件。

在  production 环境中,参数 –force 不需要指定,文件就会自动生成。

要清除类映射加载优化,请运行以下命令:

php artisan clear-compiled

此命令会删除上面 optimize 生成的两个文件。

 注意:此命令要运行在  php artisan config:cache 后,因为  optimize  命令是根据配置信息(如:config/app.php 文件的 providers 数组)来生成文件的。

4、使用redis/memcached来储存session会话

每一个laravel请求都会产生session会话信息,默认使用file存储的方式,存在 storage/framework/sessions 文件里,可以再 config/session.php 里修改储存方式。

'driver' => 'redis',

5、使用专业的缓存驱动器

「缓存」是提高应用程序运行效率的法宝之一,默认缓存驱动是 file 文件缓存,建议切换到专业的缓存系统,如 Redis 或者 Memcached,不建议使用数据库缓存。

可以再配置文件 config/cache.php 里修改:

'default' => 'reids',

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/108029.html原文链接:https://javaforall.net

(0)
上一篇 2022年3月8日 下午3:00
下一篇 2022年3月8日 下午3:00


相关推荐

  • Spring Data JPA 写SQL语句也可以如此简单

    Spring Data JPA 写SQL语句也可以如此简单在使用SpringDataJPA的时候,通常我们只需要继承JpaRepository就能获得大部分常用的增删改查的方法。有时候我们需要自定义一些查询方法,可以写自定义HQL语句像这样/***根据关注者id查找所有记录(查找关注的人的id)**@paramfromUserId*@return*/…

    2022年10月20日
    3
  • 【软考系统架构设计师】2018下系统架构师综合知识历年真题「建议收藏」

    【软考系统架构设计师】2018下系统架构师综合知识历年真题「建议收藏」【软考系统架构设计师】2018下系统架构师综合知识历年真题

    2022年5月22日
    78
  • 判断闰年的算法

    判断闰年的算法当我们遇到这个问题时 大家都知道该怎么计算 那就是所谓的 四年一闰 百年不闰 四百年再闰 根据这个写出的程序的核心算法就是 if n 4 0 amp amp n 100 0 n 400 0 但是到底是为什么要这么算呢 本来按照我自己的理解 好像只要是 4 的倍数就应该是闰年 所以对这个算法一直没有深入的理解 一直不知道它的原理 所以就自己搜了一下资料 了解了一下

    2026年3月16日
    3
  • pom文件的 spring-boot-maven-plugin报红

    pom文件的 spring-boot-maven-plugin报红报红是因为缺少版本号 后面加上即可 version 2 3 5 RELEASE version build plugins plugin groupId org springframew boot groupId artifactId spring boot maven p artifactId plugin plugins build

    2026年3月18日
    2
  • webstorm激活码2021【注册码】[通俗易懂]

    webstorm激活码2021【注册码】,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月19日
    75
  • 内容串讲

    内容串讲渡课 Java103 班内容串讲 HTML 什么是 HTML 理解 HTML 本质是超文本标记语言 能表现如文字 视频 音频 程序等复杂元素 什么是标签理解什么是标签 标签对的组成 标签名 属性 名值对 内容属性类似是给这个标签的内容加了个装备 让这些标签具有一些特殊的能力例如 amp amp amp amp amp lt ahref amp amp amp amp quot www baidu com amp

    2026年3月18日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号