laravel 5.1 的程序性能优化(配置文件)
命令优化
本文的目的是来弄清楚一些优化命令在 Laravel 5.1 和之前版本之间的差别. 在 15年6月发布的 Laravel 5.1版本中, 命令和他们的逻辑方法被清理掉, 本文章就是描述这些不同.
Laravel 5 在优化框架性能的时候提供了一系列的命令, 这篇文章接卸这些命令做什么并且把缓存文件放到了什么位置.
php artisan optimize
php artisan config:cache
php 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',
...
]
... 持续更新
原文链接:http://www.jianshu.com/p/1d5fa4696ca9
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。
laravel 5.1 的程序性能优化(配置文件)的更多相关文章
- (上线时清缓存)laravel 5.1 的程序性能优化(配置文件) - 简书
代码上到正式环境后执行这六步 php artisan config:clear php artisan config:cache php artisan route:clear php artisan ...
- C++ 应用程序性能优化
C++ 应用程序性能优化 eryar@163.com 1. Introduction 对于几何造型内核OpenCASCADE,由于会涉及到大量的数值算法,如矩阵相关计算,微积分,Newton迭代法解方 ...
- Java程序性能优化技巧
Java程序性能优化技巧 多线程.集合.网络编程.内存优化.缓冲..spring.设计模式.软件工程.编程思想 1.生成对象时,合理分配空间和大小new ArrayList(100); 2.优化for ...
- 《Java程序性能优化:让你的Java程序更快、更稳定》
Java程序性能优化:让你的Java程序更快.更稳定, 卓越网更便宜,不错的书吧
- [JAVA] java程序性能优化
一.避免在循环条件中使用复杂表达式 在不做编译优化的情况下,在循环中,循环条件会被反复计算,如果不使用复杂表达式,而使循环条件值不变的话,程序将会运行的更快. 例子: import java.util ...
- iOS程序性能优化
iOS程序性能优化 一.初级 使用ARC进行内存管理 在iOS5发布的ARC,它解决了最常见的内存泄露问题.但是值得注意的是,ARC并不能避免所有的内存泄露.使用ARC之后,工程中可能还会有内存泄露, ...
- [python]用profile协助程序性能优化
转自:http://blog.csdn.net/gzlaiyonghao/article/details/1483728 本文最初发表于恋花蝶的博客http://blog.csdn.net/lanph ...
- iOS 程序性能优化
前言 转载自:http://www.samirchen.com/ios-performance-optimization/ 程序性能优化不应该是一件放在功能完成之后的事,对性能的概念应该从我们一开始写 ...
- 微信小程序性能优化技巧
摘要: 如果小程序不够快,还要它干嘛? 原文:微信小程序性能优化方案--让你的小程序如此丝滑 作者:杜俊成要好好学习 Fundebug经授权转载,版权归原作者所有. 微信小程序如果想要优化性能,有关键 ...
随机推荐
- 深入浅出Android开发之Surface介绍
一 目的 本节的目的就是为了讲清楚Android中的Surface系统,大家耳熟能详的SurfaceFlinger到底是个什么东西,它的工作流程又是怎样的.当然,鉴于SurfaceFlinger的复杂 ...
- RabbitMQ消息队列名词解释[转]
从AMQP协议可以看出,MessageQueue.Exchange和Binding构成了AMQP协议的核心,下面我们就围绕这三个主要组件 从应用使用的角度全面的介绍如何利用Rabbit MQ构建 ...
- ASP.NET Web API使用示例
原文地址:https://blog.csdn.net/chinacsharper/article/details/21333311 上篇博客讲解rest服务开发时,曾经提到过asp.net mvc中的 ...
- 【ERROR】bash: vim: command not found的解决办法
今天在学习鸟哥的菜的时候,发现自己linux不可以启用vim命令,错误为:bash: vim: command not found. 机器环境:VMWare8+RED HAT Enterprise5 ...
- JMeter学习笔记--JMeter前置处理器
前置处理器被用来修改作用域内的采样器 HTML 链接解析器:解析从服务器得到的HTML响应,并从中提取链接和表单,使用perl型的正则表达式来寻求匹配项. HTML URL重写修饰符:使用URL重写来 ...
- 五种I/O模型和select函数简介
一.五种I/O模型 1.阻塞I/O 我们在前面所说的I/O模型都是阻塞I/O,即调用recv系统调用,如果没有数据则阻塞等待,当数据到来则将数据从内核空间(套接口缓冲区)拷贝到用户空间(recv函数提 ...
- 从汇编角度来理解linux下多层函数调用堆栈运行状态
我们用下面的C代码来研究函数调用的过程. C++ Code 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 int bar(int c, int d) { ...
- debian系在线安装软件apt-get命令族
一.背景 apt-get install/remove在线安装/卸载文件真是方便极了. 但是有时候安装/卸载文件不清楚文件在服务器上的实际命名,例如想安装sndfile.应该执行下面哪个命令呢? ap ...
- python标准库介绍——3 stat 模块详解
== stat 模块 == [Example 1-50 #eg-1-50] 展示了 ``stat`` 模块的基本用法, 这个模块包含了一些 ``os.stat`` 函数中可用的常量和测试函数. === ...
- jenkins 执行ssh 远程linux执行命令
1.远程机器编写脚本: 脚本名称为: /app/jboss/jboss-as/logs/ALL_SERVICE_STOP.sh 功能为:停止某个服务器某个目录下面的所有应用 #!/bin/bash p ...