Влияние кэша кода операции на использование памяти - PullRequest
1 голос
/ 27 августа 2008

Может кто-нибудь сказать мне, что такое использование памяти, связанное с кэшем кода операции PHP ?

Я видел много обзоров opcode cache, но все они концентрируются только на повышении производительности. У меня небольшой начальный уровень VPS и ограничения памяти меня беспокоят.

Ответы [ 3 ]

5 голосов
/ 27 августа 2008

Большая часть памяти будет приходиться на размер кэша кода операции. У каждого кэша кода операции есть свой собственный параметр по умолчанию (например, 30 МБ для APC), который можно изменить с помощью файла конфигурации.

За исключением размера кэша, фактические накладные расходы самой кэширующей памяти незначительны.

0 голосов
/ 27 августа 2008

Вы можете установить limit на потребление памяти для APC, но это потенциально ограничивает его эффективность.

Если вы просто используете его для тихого кэширования кода операции , то все должно быть в порядке. Как только выделение памяти заполнено, новые файлы не будут кэшироваться, но все будет работать как положено. Однако функции кэширования в пользовательском пространстве, такие как apc_store() и apc_fetch(), будут молча и необъяснимо проваливаться, если не будет доступной памяти.

Это может быть сложно поймать и отладить, так как не сообщается об ошибке и не выдается исключение.

0 голосов
/ 27 августа 2008

В сегодняшнем мире: это ничтожно. Я думаю, что с eAccelerator потребление памяти было примерно на 50 МБ больше, чем когда я делал свои тесты .

Если вам действительно нужна скорость, но у вас есть головная боль из-за того, что вашей ОЗУ может быть недостаточно: возьмите 40 долларов и купите еще один ГИГ ОЗУ для вашего сервера;)

...