2012-04-30 7 views

答えて

7

グーグル - >「Magentoのコンパイラモード」first hit

それが多数のためのPHPの検索を有する異なるディレクトリの多数を超える ファイルが一定の下 パフォーマンスのボトルネックを作成することができます含まれていることが判明しました負荷の種類。これに対処するために、 MagentoコアチームがMagento Compilerの拡張機能を作成し、 は、この機能をバージョン1.4の CEに搭載してMagentoを出荷し始めました。

コンパイラが行うことは、Magento システム内のすべてのクラスのコピーを作成し、1つのフォルダに配置します。クラスのフルネームは一意

はこれが行われ

.../srcに/ Foo_Module_FooController.php

などが含まれる/ SRC/Mage_Core_Model_Abstract.php

を含めることを確認するために、ファイル名に使用 です一度。次に、Magentoが コンパイラクラスを使用するように設定されている場合、その自動ロードは通常の自動ロードルーチンを実行する代わりにコンパイラフォルダ に表示されます。これは、PHPを のファイルシステムを横切るオーバーヘッドのためにすべての異なるインクルードの パスをスペアします。

+1

実際には、これが実際にあなたのために物事をスピードアップすることを確認するためにテストしたいです。たとえば、私のWebサーバーにはかなり高速なRAIDアレイがあります。コンパイラを有効にしておくと、実際に私にとっては遅くなりました。 Apache Benchmarkingツールがどのように機能するのかを知ることで、独自のテストを行うことができます。 –

+2

また、コンパイラモードが有効な場合、私は奇妙なバグに遭遇しました。また、キャッシュをクリアするだけでなく、アップデートをプッシュするたびに再コンパイルするのも面倒です。 Magentoの最近のリリースでは必要ではないため、Magentoチームは使用しないことをお勧めします。 –