分享一些 Laravel 開發的最佳實踐,還有調優技巧,後面陸續整理中php
一、配置緩存信息laravel
使用laravel自帶的artisan命令,將全部config裏面的配置都緩存到一個文件裏。redis
php artisan config:cache
全部緩存信息會被 bootstrap/cache/config.php 文件裏,也能夠用如下命令來刪除該緩存信息:數據庫
php artisan config:clear
當配置信息修改的時候,通常直接執行 php artisan config:cache 便可,由於它會自動先執行 php artisan config:clear ,而後再執行 php artisan config:cache 。bootstrap
二、路由信息緩存數組
當路由愈來愈多的時候,特別是在大型項目中,路由緩存的效果很明顯。緩存
php artisan route:cache
全部路由會被緩存到 bootstrap/cache/routes.php 文件裏,若是要使用路由緩存,那麼全部的路由就不能使用閉包即匿名函數的形式了。一樣能夠用session
php artisan route:clear
清除路由緩存。閉包
三、類映射加載優化app
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
數組)來生成文件的。
四、使用redis/memcached來儲存session會話
每個laravel請求都會產生session會話信息,默認使用file存儲的方式,存在 storage/framework/sessions 文件裏,能夠再 config/session.php 裏修改儲存方式。
'driver' => 'redis',
五、使用專業的緩存驅動器
「緩存」是提升應用程序運行效率的法寶之一,默認緩存驅動是 file
文件緩存,建議切換到專業的緩存系統,如 Redis 或者 Memcached,不建議使用數據庫緩存。
能夠再配置文件 config/cache.php 裏修改:
'default' => 'reids',