Подтвердить что ты не робот

Как узнать, включено ли какое-либо кэширование PHP?

Раньше я думал, что кэширование очень сложно установить, поэтому я никогда не делал этого... После прочтения APC это довольно легко установить. Я всегда думал, что мне придется изменить множество PHP-кода внутри моего приложения, чтобы использовать его lol.

В любом случае, я хочу установить APC. Я могу использовать phpinfo() и заметить, что он не указан на странице, поэтому он не установлен. Означает ли это также различные системы кэширования? Я не хочу устанавливать APC, если у меня есть еще одна система кэширования, которая уже установлена, так как я не уверен, что это вызовет конфликты. Хосты автоматически устанавливают их для вас?

Каковы шаги, чтобы проверить, включен ли какой-либо кешинг?

4b9b3361

Ответ 1

Любые установленные расширения кеширования будут перечислены в вашем файле phpinfo(); Они должны быть перечислены в качестве одного из аргументов в поле "Configure Command" (например, -enable-apc) и должны иметь свои собственные разделы где-то вниз по странице.

Два из самых популярных модулей кэширования PHP - это APC и Memcache.

Ответ 2

Чтобы проверить это программно:

if(extension_loaded('apc') && ini_get('apc.enabled'))
{
    echo "APC enabled!";
}

Примечание. Начиная с версии 5.5 PHP теперь имеет включенный кэш/оптимизатор Opcode (хотя по умолчанию он отключен). Если вы все еще хотите запустить APC, это расширение APCu, поскольку @alcohol упоминается в комментарии. Если вы используете это расширение, вам нужно будет заменить extension_loaded ('apc') на extension_loaded ('apc u). Или вы можете проверить его из командной строки:

phpX.Y -i | grep apcu

Убедитесь, что вы используете тот же PHP файл, который используется вашим веб-сервером.

Ответ 3

Я думаю, что большинство функций кеширования для PHP будут в форме расширений, и они должны появиться в вызове phpinfo() (хотя вам придется их распознавать).

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

Это также зависит от того, какого типа кэширования вы ищете, поскольку различные расширения и программы выполняют разные задачи. Хотя APC кэширует ваш полукомпилированный/интерпретируемый код для повышения производительности, что-то вроде memcache (также рекомендуется) направлена ​​на снижение нагрузки на любую функциональность базы данных, которую вы можете использовать.

Лично я бы посмотрел, какую функциональность вам нужно, и постарайтесь установить это - если, конечно, это уже не так.