Actualizado, vea al final de la pregunta larga (lo siento).
Mirando nuestras estadísticas de Memcached, creo que he encontrado un problema que no conocía antes. Parece que tenemos una cantidad extrañamente alta de espacio desperdiciado. Verifiqué con phpmemcacheadmin para un cambio, y encontré esta imagen mirándome:
Ahora tenía la impresión de que el peor de los casos sería que haya un 50% de desperdicio, aunque soy el primero en admitir que no conozco todos los detalles. He leído - entre otros- esta página que es de hecho un poco viejo, pero también lo es nuestra versión de memcached. Creo que entiendo cómo funciona el sistema ( por ejemplo ), creo, pero me cuesta entender cómo podemos llegar al 76% de espacio desperdiciado.
La tasa de desalojo que muestra phpmemcacheadmin es 2 ev/s
, por lo que hay algún problema aquí.
La pregunta principal es: ¿qué puedo hacer para solucionar esto ? Podría arrojarle más memoria (creo que hay algo más disponible), tal vez debería jugar con la configuración de losa (¿es eso posible con esta versión?), ¿Tal vez hay otras opciones? La actualización de la versión memcached no es una opción disponible rápidamente.
La pregunta secundaria, por curiosidad, es, por supuesto, si se espera una tasa del 75% (y aumento) de espacio desperdiciado, y si es así, por qué.
Sistema: actualmente no es algo sobre lo que pueda hacer nada, sé que la versión memcached no es la más nueva, pero estas son las cartas que me han repartido.
- Memcached 1.4.5
- Apache 2.2.17
- PHP 5.3.5
Como respuesta a la respuesta de @DavidSchwartz: aquí están las estadísticas de losas que produce phpmemcacheadmin: (por cierto, hay más losas)
( También he pegado las estadísticas de un poco más tarde en formato de texto aquí )
ACTUALIZAR
He reiniciado el demonio con -f 1.5, y se veía realmente bien. Después de un calentamiento tuvimos un 50% usado / perdido. Pero, al igual que antes, cuanto más tiempo teníamos en el día (se vuelve más ocupado durante el día), comenzó a retroceder a lo que es actualmente: 30/70, y el desperdicio sigue aumentando. Aparte de eso, todavía no sé de dónde viene el 'desperdicio'. Veo esta losa:
**Slab 5 Stats**
Chunk Size 496.0 Bytes
Used Chunk 77502 [24.6 %]
Total Chunk 314986
Total Page 149
Wasted 117.3 MBytes
Hits 30.9 Request/sec
Evicted 0
No está lleno, no ha sido desalojado, pero está desperdiciando 117.3 MBytes. El cálculo rápido que hice (corrígeme si me equivoco) fue:
- la losa anterior tiene un tamaño de fragmento de 328, por lo que en el peor de los casos, esta losa está llena de fragmentos de 329 bytes.
- Esto significa que está desperdiciando 167 bytes por fragmento usado = 12942834 bytes = 12.3 MB
Entonces, ¿de dónde vinieron los otros 105 MB desperdiciados ? Su hermano mayor justo al lado se ve así:
**Slab 6 Stats**
Chunk Size 744.0 Bytes
Used Chunk 17488 [31.0 %]
Total Chunk 56360
Total Page 40
Wasted 31.1 MBytes
Hits 107.7 Request/sec
Evicted 1109