#php #magento2
#php #magento2
Вопрос:
Я пытаюсь выяснить, почему Magento 2 работает медленно, и я отключил XDEBUG с помощью xdebug_disable (), и я пытался измерить время выполнения, когда понял, что index.php скрипт вызывался несколько раз.
Я использую microtime () для измерения времени выполнения index.php скрипт и запись выходных данных в файл, а при посещении страницы поиска они печатаются дважды, например:
define('DEBUG_START', microtime(true)); // At the very top of index.php
...
// content of index.php
...
file_put_contents(DEBUG_FILE, 'Execution time: ' . (microtime(true) - DEBUG_START) . PHP_EOL, FILE_APPEND | LOCK_EX); // At the very end of index.php
И результирующий вывод в файле отладки (для страницы поиска https://dev/catalogsearch/result/?q=test ):
Execution time: 3.8935000896454
Execution time: 2.0475149154663
И, кажется, он даже вызывается 3 раза на странице продукта (https://dev/test-product.html ):
Execution time: 0.62609481811523
Execution time: 0.1364049911499
Execution time: 1.5069890022278
Есть идеи, почему?
Обновить:
Я пробовал использовать различные версии Magento (2.2.x и 2.3) и PHP 7.0 и 7.2 с аналогичными результатами…
Ответ №1:
Хорошо, после включения инструментов разработки в Chrome я понял, что другие вызовы были сгенерированы вызовами AJAX, выполняемыми Magento, это стало очевидно на странице оформления заказа, где их было намного больше…