Empecé a investigar la posibilidad para mejorar la performance del lado del servidor. Una de las cosas que miré y me ayudó fue el APC PHP Cache Accelerator Este módulo de PHP hace un caché del código y reduce increíblemente la carga del sitio web. Sobre todo si tienen un drupal con muchos módulos! Para instalar el php-apc en debian lenny como usuario root ejecutar:

aptitude install php-apc

También le configuré algunos parámetros del apc ya que los que vienen por defecto a mi no me servían: Abrimos el php.ini:

sudo vim /etc/php5/apache2/php.ini

Y pasteamos las siguientes lineas al final de todo:

APC 3.0.16 tuning below

extension="apc.so"
apc.enabled=1
apc.shm_segments=1
apc.shm_size=128
apc.num_files_hint=2048
apc.user_entries_hint=4096
apc.gc_ttl=3600
apc.cache_by_default=1
apc.mmap_file_mask=/dev/zero
apc.slam_defense=0
apc.file_update_protection=2
apc.enable_cli=0
apc.max_file_size=1M
apc.stat=0
apc.write_lock=0
apc.report_autofilter=0
apc.include_once_override=1
apc.localcache=0

Luego de restartear nuestro servidor web (apache2 en nuestro caso) comienza a correr el APC.

sudo /etc/init.d/apache2 restart

De esta forma activamos el APC PHP para todos los virtualhost de nuestro apache2. Si por alguna razón quisieramos deshabilitar el APC para alguno de los virtualhost que tenemos en el servidor, debemos agregar la siguiente linea en el .htaccess o la configuración del sitio web correspondiente.

php_flag apc.cache_by_default Off

Si queremos habilitar el APC únicamente para algunos sitios debemos agregar la linea

php_flag apc.cache_by_default On

Si queremos visualizar el uso del cache por el APC ejecutamos lo siguiente:

gunzip /usr/share/doc/php-apc/apc.php.gz ln -s /usr/share/doc/php-apc/apc.php /var/www/apc.php

Publicado el 10/07/2013 por lukio