eAccelerator не всегда улучшает производительность?
Хорошо, я прочитал много постов и статей о том, как работает GREAT eAccelerator, я протестировал его на своем домашнем dev-сервере, и он довольно заметно замедлил мои страницы, может быть потому, что:
- У меня не много оперативной памяти?
- Это работает только для улучшения скорости кода иногда?
- Все шумиха ложная?
- Другой?
1 ответ
Я никогда не использовал eAccelerator, но я всегда работаю с APC:
Несколько вещей, которые я заметил (я не знаю, что такое eAccelerator, но, думаю, идеи совпадают):
- Первый доступ не будет быстрее: он должен скомпилировать PHP в код операции и сохранить его в памяти; только следующий доступ будет быстрее (его не придется перекомпилировать)
- Активируя APC, я видел падение загрузки ЦП, которое может доходить до 50% (т. Е. 80% ЦП сервера, используемого до активации APC; от 40% до 50% ЦП, используемого с активированным APC)
- Если не так хорошо настроить, не было никакой реальной потери производительности, но вещи там, где не очень хорошо.
- Например, если APC недостаточно оперативной памяти и она заполнена, APC придется удалить некоторые записи из кэша, чтобы иметь возможность хранить новые; в конце концов, он потратит довольно много времени на кеширование вещей, на то, чтобы их кешировать сразу после кеширования новых, и это для каждого запроса страницы. Так что не хорошо.
- Другим примером является запись конфигурации "apc.stat" (может быть, что-то подобное для eAccelerator): если для каждого файла, к которому осуществляется доступ, установлено значение 1, APC проверит на диске, был ли он изменен, по сравнению с версией в кеше. Если установлено значение 0, APC всегда будет использовать версию в кеше, без проверки версии на диске (это означает, что вам придется очищать кэш, чтобы учесть изменение файла); установка этой опции в 0 может означать снижение нагрузки на процессор от 5 до 10 %
Если вы используете Windows, все может быть не так ярко, как хотелось бы; не уверен, что это может снизить производительность, но Apache+PHP в Windows, как правило, медленнее, чем Apache+PHP в linux (Однажды я установил виртуальную машину со стеком LAP; она отвечала так же быстро, как и WAP на физической машине ^^)
Теперь пара вопросов:
- Какие версии Apache / PHP вы используете?
- Может быть, "слишком свежая" версия?
- Похоже, что уже давно не было новой версии eAccelerator; последняя версия от мая 2008 года; предыдущий был с сентября 2007 года
Вы пробовали с APC, над которым, видимо, проделана большая работа?
Какой результат вы получите с этим?
Наконец, для получения дополнительной информации, не могли бы вы дать нам больше информации о вашей среде и конфигурации? А какие-нибудь подробности о том типе теста, который вы провели?
Спасибо:-)