Drupal ob_flush () медленная и переменная производительность

После профилирования сайта на Drupal используется XHProf. Я вижу переменную производительность вызова ob_flush (), который вызывается только один раз на страницу.

Первая страница загрузки x

Function   Calls  Ex Wall  Wall %
ob_flush   1      1,712ms  39.5%

Вторая страница загрузки x

Function   Calls  Ex Wall  Wall %
ob_flush   1      270ms    24.5%

Третья загрузка Страница x

Function   Calls  Ex Wall  Wall %
ob_flush   1      300ms      25.3%

В настройках php.ini я отключил out_buffering = 0, как кажется, предложение для Drupal

Я вижу другие запросы на это, которые не дают четкого решения.

Есть ли способ улучшить эту производительность?

-1

Решение

Похоже, что функция ob_flush сильно пострадала от всего после начальной загрузки Drupal. У меня был включен модуль кеша сущностей, который кэшировал пользователей в APCcache и отдыхал в базе данных (нет возможности отключить его для других сущностей). Кеш означал, что данные запроса либо отправлялись, либо извлекались из базы данных. Это замедление отражается в ob_flush, поскольку до тех пор, пока содержимое не будет полностью сгенерировано / кэшировано или извлечено, его нельзя сбросить.

После отключения модуля кеша сущностей. Теперь я вижу, что ob_flush потребляет менее 300 мс, что все еще высоко, но не так изменчиво и чрезвычайно высоко, как раньше.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]