プロジェクトのクラスマップを生成して、本番環境でのパフォーマンスを向上させました。
生成されたファイルが非常に大きい (5000 行以上) ため、私は驚いています。ZF2 ライブラリ全体、Doctrine などが含まれます。
それは正常ですか、それともベンダー ディレクトリを除外する必要がありますか?
編集:
@Sam、はい、本番環境で APC を使用しています。
私の計画は、展開プロセスの一部としてクラス マップを自動的に生成することです。
プロジェクトのクラスマップを生成して、本番環境でのパフォーマンスを向上させました。
生成されたファイルが非常に大きい (5000 行以上) ため、私は驚いています。ZF2 ライブラリ全体、Doctrine などが含まれます。
それは正常ですか、それともベンダー ディレクトリを除外する必要がありますか?
編集:
@Sam、はい、本番環境で APC を使用しています。
私の計画は、展開プロセスの一部としてクラス マップを自動的に生成することです。
composer が提供する classmap autoloader について話しているのでしょうか。はい、これは絶対に正常です。各モジュールに対して生成されたクラスマップには、モジュール クラスのみが含まれている必要があります。
パフォーマンスに関する限り、これは少し難しいことです。APC または Memcache (またはその他のメモリ キャッシュ) にアクセスできない場合、5000 行のクラスマップ ローダーはおそらく最も理想的なソリューションではありません。
最も理想的なソリューションは、プロジェクト全体で実際に使用するクラスのオートロード ディレクティブのみを含むクラスマップです。幸いなことに、 Evan ".pro" Couryは非常に素晴らしいEdpSuperluminal
. これは理想的なソリューションのすべてを正確に実行しますが、基本的にプロジェクトが完了したら、特別な URL パラメーターを使用してアプリケーションのすべての URL を 1 回呼び出す必要があるため、かなりの手動の注意が必要です。クラスマップ。