(上线时清缓存)laravel 5.1 的程序性能优化(配置文件) - 简书
代码上到正式环境后执行这六步
php artisan config:clear
php artisan config:cache
php artisan route:clear
php artisan route:cache
artisan view:clear
php artisan api:cache
//以下是对命令的介绍
命令优化
本文的目的是来弄清楚一些优化命令在 Laravel 5.1 和之前版本之间的差别. 在 15年6月发布的 Laravel 5.1版本中, 命令和他们的逻辑方法被清理掉, 本文章就是描述这些不同.
Laravel 5 在优化框架性能的时候提供了一系列的命令, 这篇文章接卸这些命令做什么并且把缓存文件放到了什么位置.
php artisan optimizephp artisan config:cachephp artisan route:cache
优化文件的存储路径
优化命令生成的文件放置在 bootstrap/cache/目录下
artisan optimize
php artisan optimize 创建了一个调用文件来为了避免每次请求的时候把一系列的文件都加载进来. 这个文件存储在bootstrap/cache/compiled.php.
你可以在 config/compile.php 文件中指定需要额外加载的类.
这个编译文件仅仅在 环境是 production (开发环境) 的时候才生成, 除非使用 --force参数
artisan optimize 同时也创建了bootstrap/cache/services.json , 用来优化服务加载器的性能. 这个命令不再编译视图文件.
(The command does no longer compile views.)
php artisan clear-compiled 删除bootstrap/cache/compiled.php 和bootstrap/cache/services.json.
artisan optimize的输出基于你的配置文件, 例如config/app.php的providers数组, 在部署模式下, 这个命令需要在php artisan config:cache之后执行
artisan config:cache
php artisan config:cache 这个把所有的配置文件打包到一个文件 bootstrap/cache/config.php 中, 这样避免了配置文件加载多次. 这个命令在生成新的配置文件前会清理掉旧的配置文件.
php artisan config:clear 用来逆向这个过程, 来删除bootstrap/cache/config.php这个文件.
artisan route:cache
php artisan route:cache 建立一个路由缓存文件来加速路由解析. 这个命令会首先清理旧的缓存文件.
php artisan route:clear 删除路由缓存
artisan view:clear
Laravel 会在第一次运行框架的时候编译所有的视图文件. 编译的文件根据路径的 md5 来计算新文件的路径 MD5 sum of its path (不是内容, 是路径).
artisan view:clear 清理 所有在 storage/framework/views/ 下的文件.
Laravel 5.0
在 5.1 之前, 优化文件默认生成在 vendor/ 目录下. 如果vendor 目录不可写, 文件会被写入到 storage/framework/目录下, 在 v5.0.20 你可以设置 storage/framework/作为默认的优化文件的存储路径. 方法是 在 bootstrap/app.php 文件中加入下边这一行:
$app->useStoragePathForOptimizations(true);
Laravel 5.1 会用一个指定的目录bootstrap/cache来保存 生成的编译文件. 这包括 , bootstrap/cache, compiled.php, routes.php, config.php, 和services.json.
1. 取消 Inspiring 加载
来这里看看 Inspiring 能做什么
Inspiring 是 l5 默认带的一个获取心灵鸡汤显示的一个示例. 不需要鸡汤则优化掉
'aliases' => [
... 'Inspiring' => 'Illuminate\Foundation\Inspiring',
...
]
(上线时清缓存)laravel 5.1 的程序性能优化(配置文件) - 简书的更多相关文章
- laravel 5.1 的程序性能优化(配置文件)
命令优化 本文的目的是来弄清楚一些优化命令在 Laravel 5.1 和之前版本之间的差别. 在 15年6月发布的 Laravel 5.1版本中, 命令和他们的逻辑方法被清理掉, 本文章就是描述这些不 ...
- 秋色园QBlog技术原理解析:性能优化篇:缓存总有失效时,构造持续的缓存方案(十四)
转载自:http://www.cyqdata.com/qblog/article-detail-38993 文章回顾: 1: 秋色园QBlog技术原理解析:开篇:整体认识(一) --介绍整体文件夹和文 ...
- Laravel 5.4 快速开发简书:
Laravel 5.4 快速开发简书第1章 课程介绍 介绍课程的大体脉络和课程安排 第2章 Laravel 5.4介绍 本节课会带领大家介绍laravel的各个版本历史以及讨论php框架的未来发展趋势 ...
- [MySQL性能优化系列]提高缓存命中率
1. 背景 通常情况下,能用一条sql语句完成的查询,我们尽量不用多次查询完成.因为,查询次数越多,通信开销越大.但是,分多次查询,有可能提高缓存命中率.到底使用一个复合查询还是多个独立查询,需要根据 ...
- 订单业务楼层化 view管理器和model管理器进行了model和view的全面封装处理 三端不得不在每个业务入口上线时约定好降级开关,于是代码中充满了各种各样的降级开关字段
京东APP订单业务楼层化技术实践解密 原创 杜丹 留成 博侃 京东零售技术 2020-09-29 https://mp.weixin.qq.com/s/2oExMjh70Kyveiwh8wOBVA 用 ...
- 清缓存的姿势不对,真的会出生产bug哦
最近解决了一个生产bug,bug的原因很简单,就是清理缓存的方式不对.本来没啥好说的,但是考虑到我们有时候确实会在一些小问题上栽跟头,最终决定把这个小故事拿出来跟大家分享下. 风起有一天在撸代码,突然 ...
- redis修改持久化路径、日志路径、清缓存
redis修改持久化路径和日志路径 vim redis.conf logfile /data/redis_cache/logs/redis.log #日志路径 dir /data/redis_cach ...
- web性能优化:详说浏览器缓存
TOC 背景 浏览器的总流程图 一步一步说缓存 朴素的静态服务器 设置缓存超时时间 html5 Application Cache Last-Modified/If-Modified-Since Et ...
- H5 缓存机制浅析 移动端 Web 加载性能优化
腾讯Bugly特约作者:贺辉超 1 H5 缓存机制介绍 H5,即 HTML5,是新一代的 HTML 标准,加入很多新的特性.离线存储(也可称为缓存机制)是其中一个非常重要的特性.H5 引入的离线存储, ...
随机推荐
- HTML5 placeholder实际应用经验分享及拓展
QQ邮箱登陆(http://mail.qq.com) 如下截图啦: 我在上面一个demo类似原理上做了下修改,制作了一个这样子交互效果的demo,希望对有兴趣的同行能帮上点忙,您可以狠狠地点击这里:透 ...
- java-day21
# DQL:查询语句 1. 排序查询 * 语法:order by 子句 * order by 排序字段1 排序方式1 , 排序字段2 排序方式2... ...
- 如何用json 与jsonp 的区别去回答你的面试官?
常常 有面试官这样问我们,虽然用过无数次,但是回答不上岂不是尴尬,那我们浅析一下它们的区别? 1. json JSON是一种基于文本的数据交换格式,用于描述复杂的数据,举个例子: var nax=[ ...
- 《代码大全2》读书笔记 Week3
<代码大全2>第六.七章 作者在第六章中从抽象数据类型(Abstract Data Type)出发阐释类(class)的概念,给出创建类的原因以及创建高质量的常涉及的设计问题.抽象数据类型 ...
- MySQL日期格式化 利用Mysql的DATE_FORMAT()进行日期格式转换
碰到一个MYSQL的问题,表logstatb中moment字段的内容是"年-月-日 时:分:秒",需要查询匹配“年月日”或“时:分:秒”即可的数据条目,这个时候就可以通过下面的SQ ...
- [转]WPF的依赖属性是怎么节约内存的
WPF升级了CLR的属性系统,加入了依赖属性和附加属性.依赖属性的使用有很多好处,其中有两点是我认为最为亮眼的: 1)节省内存的开销; 2)属性值可以通过Binding依赖于其它对象上,这就使得我的数 ...
- delphi中TreeView使用(转)
delphi中TreeView使用(1) TreeView由节点构成,建树通过对TreeView.items属性进行操作.Items是一个TTreeNodes对象,这是一个TTreeNode集. 一. ...
- 开放应用模型(OAM):全球首个云原生应用标准定义与架构模型
Kubernetes 项目作为容器编排领域的事实标准, 成功推动了诸如阿里云 Kubernetes (ACK)等云原生服务的迅速增长.但同时我们也关注到,Kubernetes 的核心 API 资源比如 ...
- thinkphp 标签扩展
标签库加载直线电机参数 模板中加载标签库,预加载自定义标签库,扩展内置标签库的加载 请参考:http://document.thinkphp.cn/manual_3_2.html#taglib 自定义 ...
- JavaScript中深拷贝实现
JavaScript 中深拷贝实现 拷贝时候涉及到: 1.循环结构 2.判断数组 Array 还是对象 Object 函数实现 /** * 获取满足条件的数组中的第一个元素 * @param ...