Назад | Перейти на главную страницу

PHP APC - 100% фрагментация - это плохо?

APC.PHP сообщает мне:

Uptime  2 days, 15 hours and 13 minutes
File Upload Support 1
File Cache Information
Cached Files    375 ( 53.5 MBytes)
Hits    377684
Misses  376
Request Rate (hits, misses) 1.66 cache requests/second
Hit Rate    1.66 cache requests/second
Miss Rate   0.00 cache requests/second
Insert Rate 0.00 cache requests/second
Cache full count    0
User Cache Information
Cached Variables    573 ( 2.3 MBytes)
Hits    77569
Misses  889
Request Rate (hits, misses) 0.34 cache requests/second
Hit Rate    0.34 cache requests/second
Miss Rate   0.00 cache requests/second
Insert Rate 0.06 cache requests/second
Cache full count    0

"Fragmentation: 100.00% ( 8.0 MBytes out of 8.0 MBytes in 95 fragments)"

Переменные:

apc.shm_segments    1
apc.shm_size    64M
apc.slam_defense    0
apc.stat    1
apc.stat_ctime  0
apc.ttl 3600
apc.user_ttl    3600
apc.max_file_size   1M
apc.gc_ttl  3600

Окружающая среда:

Микроинстанс Amazon EC2, на котором запущен очень маленький сайт WordPress с небольшим количеством посетителей и около 8 плагинов.

Вопросы:

1) Имеет ли значение, если фрагментация станет 100%? Это как-то влияет на производительность?

2) Почему не снижается фрагментация?
Я думал, что он должен автоматически освобождать место, когда вы устанавливаете ttl на> 0

3) Почему счетчик полного кэша не увеличивается, несмотря на 100% фрагментацию в течение более 24 часов?

4) Я использую APC версии 3.1.7, стоит ли обновляться до последней версии? (использование последней версии кажется более сложным из-за зависимостей, поэтому я предпочитаю избегать, если это возможно)

1) Имеет ли значение, если фрагментация станет 100%? Это как-то влияет на производительность?

Только если APC попытается добавить что-то новое в shm. Поскольку ваш процент попаданий составляет 99,9% (и единственные промахи были при первоначальной загрузке файлов), это не влияет на производительность.

2) Почему не снижается фрагментация?

Потому что ttl вступает в игру только тогда, когда требуется больше места, которое невозможно заполнить из-за текущих пробелов.

3) Почему не увеличивается счетчик полного кэша

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

Я использую APC версии 3.1.7, стоит ли обновляться до последней версии?

Это слишком сложный вопрос, чтобы здесь отвечать. Хорошая практика - обновлять вашу установку с помощью исправлений для безопасности / стабильности / производительности, но также важно поддерживать согласованность компонентов вашей установки.