パフォーマンスは常に Laravel フレームワークに対する批判であり、Laravel プログラムのチューニングは習得しなければならないスキルです。
次に、いくつかの開発のベストプラクティスwww.itxdl.cn、およびチューニングテクニックを共有します。他に提案がある場合は、ディスカッションのためにメッセージを残してください。
簡単なリストは次のとおりです:
設定情報 キャッシュ職人 config:cache
ルートキャッシュ職人 ルート:cache
クラスマッピング読み込み最適化職人最適化
自動読み込み最適化コンポーザー dumpautoload
Memcached を使用してセッション config/session.php を保存する
専門的なキャッシュドライバーを使用する config/cache.php
データベースリクエストの最適化
データセットのキャッシュロジックの作成
HHVM、OpCacheなどのジャストインタイムコンパイラ(JIT)の使用
フロントエンドリソースとElixirのマージ 1. 構成情報のキャッシュ
次の Artisan 組み込みコマンドを使用して、config フォルダー内のすべての構成情報を 1 つのファイルにマージし、実行時にロードされるファイルの数を減らします。
phpArtisan config:cache
上記のコマンドは、ファイル bootstrap/cache/config.php を生成します。次のコマンドを使用して、構成情報のキャッシュをキャンセルできます:
php Artisan config:clear
このコマンドの機能 bootstrap/cache/config.php ファイルを削除するだけです。
注: 構成情報キャッシュは更新によって自動的に再ロードされないため、開発中は構成情報キャッシュをオフにすることをお勧めします。これは通常、実稼働環境で使用され、Envoy タスクで使用できます。ランナー。
2.ルートキャッシュ
ルートキャッシュはルーターの登録効率を効果的に向上させることができ、その効果は大規模なアプリケーションでより顕著になります。次のコマンドを使用できます。 phpArtisan Route:cache
上記のコマンドは、bootstrap/cache/routes.phpファイルを生成しますが、ルートキャッシュはルーティング匿名関数の書き込みロジックをサポートしていないことに注意してください。
次のコマンドを使用してルートキャッシュをクリアできます:
phpArtisan Route:clear
このコマンドは、bootstrap/cache/routes.php ファイルを削除します。 。
注: ルート キャッシュは更新によって自動的に再ロードされないため、開発中はルート キャッシュをオフにすることをお勧めします。これは通常、実稼働環境で使用され、Envoy タスク ランナーで使用できます。
3.クラスマッピング読み込みの最適化
optimizeコマンドは、一般的に読み込まれるクラスを1つのファイルにマージし、ファイルの読み込みを減らすことで操作効率を向上させます:
phpArtisan optimize --力
bootstrap/cache/compiled.php と bootstrap/cache/services.json の 2 つのファイルが生成されます。
config/compile.phpファイルを変更することで、マージするクラスを追加できます。
本番環境ではパラメータ --force を指定する必要はなく、ファイルは自動的に生成されます。
クラスマップの読み込みの最適化をクリアするには、次のコマンドを実行します:
phpArtisan Clear-compiled
このコマンドは、上記の最適化によって生成された 2 つのファイルを削除します。
注: optimize コマンドは構成情報 (config/app.php ファイルのプロバイダー配列など) に基づいてファイルを生成するため、このコマンドは phpArtisan config:cache の後に実行する必要があります。
4. 自動読み込み最適化
このコマンドはLaravelプログラムだけでなく、composerを使用して構築されたすべてのプログラムに適用されます。このコマンドは、PSR-0 と PSR-4 をクラス マッピング テーブルに変換して、クラスの読み込み速度を向上させます。
Composer dumpautoload -o
注: この操作は、phpArtisan optimize --force コマンドですでに実行されています。
5. Memcached を使用してセッションを保存します
すべての Laravel リクエストはセッションを生成し、プログラムの効率を効果的に向上させることができます。セッションの設定情報は config/session.php です。 Memcached や Redis などの専門的なキャッシュ ソフトウェアに変更することをお勧めします:
'driver' => 'memcached',
6. 専門的なキャッシュ ドライバーを使用します
アプリケーションの実行効率を向上させる魔法の武器の 1 つであるデフォルトのキャッシュ ドライバーは、Redis や Memcached などの専門的なキャッシュ システムに切り替えることをお勧めします。
'default' => 'redis',
7. データベースリクエストの最適化
データ関連付けモデルを読み取るときに遅延プリロードとプリロードを使用します。
使用するLaravel Debugbar または Clockwork を使用して、各ページのデータベース リクエストの総数に注意してください。
ここの長さは Laravel にのみ関連するものであり、データの最適化に関するその他の情報については、自分で確認してください。 8. データセットのキャッシュロジックを書く Laravelが提供するキャッシュレイヤーオペレーションを適切に使用して、データベースから取り出したデータセットをキャッシュし、データベースへの負荷を軽減し、実行しますインターネット上の専門的なキャッシュ ソフトウェアも、データベースよりもはるかに高速にデータを読み取ることができます。 $posts = Cache::remember('index.posts', $ minutes = 30, function() , 'tags', 'author', 'seo')-> whereHidden(0)->get(); }); 覚えておいてください データ関連付けモデルさえも、一緒にキャッシュできるととても便利です。 9. ジャストインタイムコンパイラーを使用する HHVM と OpCache は、変更を加えることなく、アプリケーションのパフォーマンスを簡単に 50% 以上向上させることができます。詳細については、「OpCache を使用して PHP 5.5 以降のプログラムのパフォーマンスを向上させる」を参照してください。
10. フロントエンドリソースのマージ
最適化標準として、ページは 1 つの CSS ファイルと 1 つの JS ファイルのみをロードする必要があり、ファイルは CDN に簡単に移動できなければなりません。ファイル名は修正により変更する必要があります。
~PHPプログラムを最適化するための10のヒント Laravel 5フレームワーク
Laravelフレームワークではパフォーマンスが常に批判の対象となっているため、Laravelプログラムのチューニングは習得しなければならないスキルです。
次に、開発のベスト プラクティスとチューニング テクニックをいくつか紹介します。他にご提案がございましたら、お気軽にメッセージを残してください。
簡単なリストは次のとおりです:
設定情報 キャッシュ職人 config:cache
ルートキャッシュ職人 ルート:cache
クラスマッピング読み込み最適化職人最適化
自動読み込み最適化コンポーザー dumpautoload
Memcached を使用してセッション config/session.php を保存する
専門的なキャッシュドライバーを使用する config/cache.php
データベースリクエストの最適化
データセットのキャッシュロジックの作成
HHVM、OpCacheなどのジャストインタイムコンパイラ(JIT)の使用
フロントエンドリソースとElixirのマージ
|