Как я могу ускорить время отклика кеша кода операции?

У меня довольно мощный VPS (четырехъядерный Xeon, 3 ГБ RAM, SSD), работающий под управлением Ubuntu 12.10, PHP 5.5.8 и кэш кода операции.

Я использую memcached, кэш кода операции и mod_pageSpeed.

Я наблюдаю за приложением, используя New Relic.

Проблема в том, что независимо от того, что я пробовал, увеличивая ограничения памяти, размеры кэша и т. Д., Я не могу получить время ответа на запрос ниже примерно 80 мс.

База данных работает под управлением Percona, тратит около 40 мс на запрос, а PHP тратит около 40 мс на запрос.

Все запросы обрабатываются из скомпилированного кэша OpCode, поэтому я не понимаю, откуда берется вся задержка.

Что мне не хватает?

Благодарю. Заранее извиняюсь, если я пропустил какую-то важную информацию, все может быть предоставлено по запросу.

1 ответ

Решение

Кэш кода операции не "компилирует, выполняет и кэширует результат". По первому запросу ваш PHP-код компилируется в байт-код, этот байт-код сохраняется и затем выполняется. При последующих запросах сохраненный байт-код выполняется. Без кэша кода операции код PHP будет компилироваться в байт-код при каждом запросе.

Если вы хотите кэшировать выходные данные, сгенерированные вашей программой, и обслуживать ее, а не выполнять вашу программу при каждом запросе, вам необходимо изучить дополнительные методы кэширования.

Другие вопросы по тегам