APC демонстрирует 100% фрагментацию

APC показывает 100% фрагментацию. Это плохо?

Означает ли это, что это вообще не помогает? Какие пути я могу улучшить, чтобы улучшить ситуацию?

Заранее спасибо.

Solutions Collecting From Web of "APC демонстрирует 100% фрагментацию"

По моему опыту, да. У меня была система, в которой APC показывала 100% фрагментацию, а производительность была плохой. Я увеличил лимит памяти APC (до 200 МБ в моем случае – но у нас было много кода) достаточно, чтобы дать ему небольшую комнату. Фрагментация упала до нуля, а IIRC, загрузка процессора на сервере снизилась на 50%.

Кроме того, убедитесь, что вы используете скрипт apc.php, который поставляется с APC для мониторинга фрагментации / использования. Мы даже написали проверку nagios, чтобы посмотреть APC, потому что у нас достаточно трафика, который Apache полностью блокирует, когда APC заполняется.

Мораль истории: дать APC достаточно памяти и контролировать использование.

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

Существует два основных способа повышения производительности:

  • Дайте больше памяти APC. В идеале APC может хранить ваши полные скрипты в памяти.
  • используйте apc.filter в php.ini для фильтрации файлов, которые часто не запрашиваются или часто меняются.

Кроме того, использование apc_store () с коротким временем, чтобы жить плохо, а также переписывание с помощью apc_store () часто.

[…] Фрагментация – это то, что вредит производительности, а не размер памяти как таковой. Но также кажется, что фрагментация происходит, когда память низкая […]

Заметим также, что, как представляется, ошибка с графиком apc.php: http://pecl.php.net/bugs/bug.php?id=13146