我们已经准备好了,你呢?

2024我们与您携手共赢,为您的企业形象保驾护航!

性能一直是该框架被诟病的点,因此程序调优是一项必须学习的技能。

接下来我会分享一些开发的最佳实践和调优技巧。

以下是简单列表:

配置信息缓存:cache

路由缓存 route:cache

加载优化

自动加载优化

用于存储/.php

使用专用缓存 /cache.php

数据库请求优化

为数据集编写缓存逻辑

使用即时编译器(JIT),例如 HHVM,

前端资源合并

1.配置信息缓存

使用以下内置命令将文件夹中的所有配置信息合并为一个文件,以减少运行时加载的文件数量:

php artisan config:cache

上述命令会生成文件/cache/.php,可以使用以下命令取消配置信息缓存:

php artisan config:clear

此命令的作用是删除 /cache/.php 文件。

注意:配置缓存不会随着更新而自动重新加载,因此建议在开发期间关闭配置缓存。它一般用于生产环境,可以与 Envoy 任务运行器一起使用。

2. 路由缓存

路由缓存可以有效提高路由器的注册效率,在大型应用中效果更加明显,可以使用以下命令:

php artisan route:cache

以上命令会生成/cache/.php文件,需要注意的是,路由缓存不支持路由匿名函数写入逻辑。

可以使用以下命令清除路由缓存:

php artisan route:clear

此命令的作用是删除 /cache/.php 文件。

注意:路由缓存不会随着更新而自动重新加载,所以建议在开发时关闭路由缓存,一般在生产环境中使用,可以与 Envoy 任务运行器配合使用。

3. 类图加载优化

该命令将经常加载的类合并到一个文件中,通过减少文件加载来提高运行效率:

php artisan optimize --force

将生成两个文件/cache/.php和/cache/.json。

您可以通过修改/.php 文件来添加要合并的类。

在环境中,不需要指定参数--force,该文件将自动生成。

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

php artisan clear-compiled

该命令将删除上面生成的两个文件。

注意:该命令应该在 php:cache 之后运行,因为该命令根据配置信息(例如 /app.php 文件数组)生成文件。

4.自动加载优化

该命令不只是针对程序,而是针对所有使用 构建的程序。该命令会将 PSR-0 和 PSR-4 转换成类映射表,以增加类加载的速度。

composer dumpautoload -o

注意:这已经在 php --force 命令中完成。

5. 用于存储会话

每次请求都会产生一个,修改的存储方式可以有效提高程序效率,的配置信息在/.php,建议修改为Redis等专业的缓存软件:

'driver' => 'memcached',

6.使用专用缓存驱动器

“缓存”是提高应用运行效率的法宝之一,默认的缓存驱动是文件缓存,建议换用专业的缓存系统,比如Redis,不建议使用数据库缓存。

'default' => 'redis',

7.数据库请求优化

数据关联模型采用延迟预加载和读取时预加载;

使用或关注每个页面的数据库请求次数;

此处篇幅只写数据优化相关的,其他内容请自行查看其他资料。

8. 为数据集编写缓存逻辑

合理利用所提供的缓存层操作,可以将从数据库取出的数据集缓存起来,减少数据库的压力。专业的缓存软件运行在内存中,读取数据的速度比数据库快得多。

$posts = Cache::remember('index.posts', $minutes = 30function(){    return Post::with('comments', 'tags', 'author', 'seo')->whereHidden(0)->get();});

甚至连数据关联模型都缓存了,多方便啊。

9. 使用即时编译器

HHVM 可以很轻松地让你的应用程序在不做任何改动的情况下提高 50% 甚至更多的性能。我之前做过实验。详情请看:使用 HHVM 提升 PHP 5.5+ 程序性能。

10. 前端资源合并

作为优化的标准,一个页面应该只加载一个CSS和一个JS文件,且文件要方便走CDN,文件名需要随着修改而改变。

看完本文有收获?点赞、分享是最大的支持!

二维码
扫一扫在手机端查看

本文链接:https://by928.com/3999.html     转载请注明出处和本文链接!请遵守 《网站协议》
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。

项目经理在线

我们已经准备好了,你呢?

2020我们与您携手共赢,为您的企业形象保驾护航!

在线客服
联系方式

热线电话

13761152229

上班时间

周一到周五

公司电话

二维码
微信
线