Często widzę, że ludzie wspominają, że korzystają z funkcji kompilatora Magento.
Nigdy nie zastanawiam się, w jakich przypadkach powinieneś go użyć i ile zyskasz wtedy wydajności.
[OŚWIADCZENIE]: Ponieważ ostatnio dostałem sugestię dotyczącą edycji. To pytanie nie dotyczy di-kompilacji magento2, ani trochę magento2.
performance
compiler
Flyingmana
źródło
źródło
Odpowiedzi:
[ZASTRZEŻENIE] Ta odpowiedź jest przeznaczona tylko dla kompilatora w Magento 1, kompilator w Magento 2 ma zupełnie inny cel / efekt
Nigdy nie powinieneś go używać.
Ponieważ PHP opracowało kilka mechanizmów usprawnienia aplikacji zawierających wiele plików.
Oznacza: php opCache w bieżącej wersji php zapewnia lepszą poprawę wydajności, jeśli jest poprawnie skonfigurowany. Na przykład, aby użyć wystarczająco wysokiego limitu dla buforowanych plików. OpCache posiada również ulepszenia funkcji dostępu do systemu plików, które działają na głębszym poziomie niż aoe_classpathcache i jeszcze bardziej poprawia wydajność.
W końcu mamy automatyczne ładowanie, które nie wymaga więcej niż kilku ms bez kompilatora. Są nawet przypadki, w których kompilator wyrządził szkodę wydajności. Nie wspominając już o szalonych czasochłonnych problemach z debugowaniem aplikacji za pomocą kompilatora.
OpCache nie tylko usprawnia automatyczne ładowanie, optymalizacje funkcji systemu plików poprawiają nawet ładowanie plików szablonów i układów.
http://php.net/manual/en/opcache.configuration.php
źródło
realpath_cache_size=64k
irealpath_cache_ttl=3600
. 64k wydaje się być ulubionym miejscem, ludzie polecają więcej, ale testy wydajności pokazują, że to strata pamięci.„Kiedy powinienem korzystać z kompilatora Magento”
Jeśli z jakiegoś powodu twój system nie ma zainstalowanego akceleratora PHP (mało prawdopodobne, ale możliwe)
Jeśli używasz bardzo starej wersji Magento (naprawdę nie powinieneś być)
Dlaczego warto to wyłączyć?
Całkowicie zgadzam się z powyższym komentarzem Fiasco Labs. Chociaż nie podałeś numeru wersji Magento, dotyczy to wszystkich wersji Magento (CE) powyżej 1.6.1, jeśli włączysz kompilator w systemie, który ma już akcelerator php (jak PHP-APC itp.) Cały sklep , od stron administracyjnych aż do sprawdzania klienta będzie mierzalnie wolniejszy, co gorsza, wiele wtyczek / modów, które znajdziesz na magento connect, nie będzie działać poprawnie przy aktywnym kompilatorze.
Krótko mówiąc, w 2014 roku nigdy nie ma żadnego dobrego powodu, aby włączyć kompilator.
źródło