Laravelの最適化
Laravelのプロジェクトをデプロイする際にやっておいたほうがいい最適化。
至らない点もあるかと思いますので、
参考程度でご覧ください。
参考サイト様
Laravel を高速化というか最適化する
-
最適化のコマンド実行見本
// ソースコードの配置 . . . // ソースコードの配置完了後 // composer.lockの内容でパッケージのインストール composer install // configディレクトリ以下の設定ファイルをキャッシュ php artisan config:cache // ルーティング定義をキャッシュ php artisan route:cache
各種コマンドの説明は以下を参照
composer install
- composer.lockにもとづいてパッケージをインストールする
- インストール後は以下を行っている
- composer dump-autoload
- php artisan clear-compiled
- php artisan optimize
composer dump-autoload
- autoloadを自動で生成してくれる
autoload_classmap.phpautoload_files.phpautoload_namespaces.phpautoload_psr4.phpautoload_real.php
- 新たなクラス定義やファイル定義を行うたびに実行する
- composer installでパッケージインストールと同時に実行される
artisan clear-compiled
- 以下2つのファイルを削除する
/bootstrap/cache/services.json/bootstrap/cache/compiled.php
artisan optimize
- composer dump-autoload --optimize の実行
- フレームワークのコードを結合して一つのファイルに纏める
/bootstrap/cache/compiled.php-
/config/compile.phpの files ブロックににキャッシュ対象のクラスを書けば一緒に結合される
※いずれ optimize は削除されるようなので要注意
artisan config:cache
- 設定ファイルをキャッシュする
- config 以下の設定ファイルを「var_export」して以下ファイルに出力
- /bootstrap/cache/config.php
artisan route:cache
- ルーティング定義をbase64_encodeで以下ファイルに出力
/bootstrap/cache/routes.php
-
注意点:クロージャ定義のルーティングがあると、最適化されずエラーになる
-
/bootstrap/cache/routes.phpが作成されず通常のルーティングアクセス - アクセスできなくなるわけではない
-
artisan view:clear
- Bladeのキャッシュを削除する
-
/storage/framework/viewsの中のファイルたち
-