Я пытаюсь выяснить, почему 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 с похожими результатами ...