Configurar y optimizar xCache

17 Septiembre 2009 - 18:37

Desde que hace unos días hemos instalado xCache en varios servidores, nos hemos puesto a la tarea de aprender como funciona y optimizar su configuración para sacarle mayor rendimiento. Todavía no controlo completamente cada parámetro pero si que tengo algunas pistas de como empezar a tunear el xcache.ini para mejorar su rendimiento:

1/ Instalar el administrador para ver el panel por web
Cuando explicaba como instalar el script, al final de todo, comentaba como ver a través de web el panel de administración del xcache. Te recomiento que una vez compruebes que todo está correctamente instalado, crees el panel de forma urgente (luego se te olvidará), porque ahí es donde vamos a poder ver cosas que nos den pistas de como está funcionando xCache.

2/ Funcionalidades del panel de xcache
Al acceder al panel vas a ver tres cosas:
a/ Statistics: Estadisticas y parámetros de configuración
b/ List PHP: Listado de archivos php cacheados
c/ List Var Data: Creo que se refiere a variables cacheadas, pero ni lo tengo claro, ni lo he activado.

3/ Parámetros a configurar
Para configurar los parámetros, deja correr el script al menos 5 minutos para que empiece a tomar datos y ver cosas.

a/ xcache.count
Se refiere al número de partes en als que deseas dividir el cache. Se la relaciona con el número de procesadores que tienes en tu servidor. Lo habitual es colocar nº de procesadores + 1. Puedes ver cuantos tienes en tu servidor o VPS , con el comando:
cat /proc/cpuinfo |grep -c processor

b/ xcache.size
Es uno de los parámetros clave. Fíjate en la columna OOMs (Out of Memory). Todos los valores deberían ser CERO. Si tienes valores muy bajos no deberías preocuparte demasiado, pero vigílalo. Generalmente o van a ser CERO o van a ser muy altos.

Si son altos significa que xcache hace un esfuerzo enorme y la memoria asignada no es suficiente, asi que casca (Out of memory) . Puedes ir subiendo el parámetro xcache.size .  Yo lo hago en múltiplos de 32M. De entrada puedes ponerle 64M que no pasará nada, pero tampoco debes asignarle demasiada, porque dejarás de ofrecer memoria al servidor para ejecutar otros procesos ajenos a xcache.

c/ xcache.slots
Todavía no tengo claro que es exactamente, pero lo hemos subido de 8k a 16k y hemos notado mejoras. Siempre que lo subas, debes saber que consumirá más memoria, asi que como siempre dependerá de la máquina o VPS que tengas.

d/ xcache.ttl y xcache.gc_interval
Me falta hacer pruebas con dos parámetros que también pueden ser importantes, que son xcache.ttl y xcache.gc_interval que se refieren a cada cuantos segundos se refresca el caché o se purga. Si tengo nuevos datos lo publicaré.

e/ parámetros _var
Respecto a los parámetros _var yo de momento no los tocaría. No he visto nada ni nadie que hable de ellos y al activarlo para hacer pruebas hemos perdido prestaciones.

4/ Más cosas a tener en cuenta
Además de configurar el fichero xcache.ini, debes tener en cuenta que para mejorar todavía más el rendimiento de tus webs, deberías optimizar la confioguración del propio apache  e incluso el del servidor mysql (eso es otra historia) y por supuesto dependerá de la máquina que tengas.

Tienes la doc. oficial de los parámetros en la web oficial:
http://xcache.lighttpd.net/wiki/XcacheIni

Si haces pruebas y obtienes conclusiones, me encantaría que las pudieras compartir conmigo, lo publicaré y lo compartiré con los demás.

Puedes Hacer un Comentario, o Trackback desde tu web.

3 Comentarios to “Configurar y optimizar xCache”

  1. nico says:

    21 Septiembre 2009 - 16:33

    Hola! Muy interesante, yo lo estoy probando en el nuevo servidor de la web.

    Aún no tengo conclusiones ya que no esta en producción.

    Saludos!

  2. Fernando Gomez says:

    21 Septiembre 2009 - 17:29

    Cuando tengas datos, háznoslo saber. Un saludo.

  3. Wordpress balanceado en varios servidores | Fernando Gomez says:

    20 Octubre 2009 - 13:00

    [...] Servidor 1/ Aquí estará la instalación inicial de WP. Mysql lo apagamos, dejamos correr Apache. Servidor 2/ Tendremos solo Apache y una copia exacta de la instalación del Worpdress del primer servidor. Servidor 3/ Solo Mysql. El resto de servicios apagados. En el servidor 1 y 2, por supuesto debes configurar correctamente el xCache. [...]

Hacer un Comentario