PHP APC кэш, он работает из коробки?


Так вот что меня беспокоит. Я просто установил APC cache и тестирую его. При использовании интерфейса администратора APC, в apc.php файл, я могу видеть всю информацию о APC и т.д. Когда я захожу в записи системного кэша, я вижу, что каждый сценарий, который я вызываю, записывается там.

Означает ли это, что APC Cache работает из коробки? Я могу просто установить APC cache, и он уже ускоряет мое приложение, кэшируя скрипты? И если я хочу, я могу кэшировать переменные, чтобы сделать его даже быстрее?

Надеюсь, вы получите вопрос, его, вероятно, просто для кого-то с большим опытом работы с APC.

Я знаю, что могу добавить некоторые переменные в кэш, а затем вытащить их, и это ускорит мое приложение. Но правда ли, что APC будет ускорять приложение и кэшировать скрипты самостоятельно? И есть ли хорошая документация, где я мог бы узнать больше о APC?

1 8

1 ответ:

Да, APC "просто работает". Любой, кто работает с PHP в производственной среде без APC/(другой opcodecache), упускает самое простое улучшение производительности, которого он может легко достичь.

Хотя есть несколько предостережений.

Если вы находитесь в разработке, вы все еще можете запустить APC, однако, вы, вероятно, захотите включить вызовы stat. Это означает, что APC будет проверять последние измененные файлы.

apc.stat = [1|0]

Итак, если у вас не включены вызовы stat, и вы меняете файл, а APC уже имеет кэшируйте его, тогда он не будет наблюдать за вашими изменениями, и вы продолжите использовать кэшированный код операции.

Как вы уже упоминали, APC используется не только для кэширования опкодов, но и для кэширования пространства пользователя. У вас есть ваш кэш system и ваш кэш user.

Вы можете хранить вещи в вашем пользовательском кэше, просто выполнив что-то вроде:

apc_store("fooKey", "barValue");