Aceleradores de PHP


by

Todo sobre los aceleradores de PHP eAccelerator, XCache y APC

 

¿Qué es son los aceleradores de PHP?

Los aceleradores de PHP son extensiones que se instalan en el mismo servidor y se encargan principalmente de aumentar el rendimiento en la carga de archivos con el lenguaje PHP. Trabajan almacenando en la caché los SCRIPTS PHP compilados en código binario para que cada vez que se soliciten, no haya que cargarlos de nuevo, por lo que reducen la carga del servidor hasta la mitad y en algunos casos la reducción puede llegar a ser 10 veces más, dependiendo de la estructura de los archivos PHP.

Los Aceleradores de PHP que indicamos abajo solamente pueden funcionar en Servidores que funcionen como Módulo Apache o en FASTCGI.

¿Qué Acelerador PHP puedo usar en mi servidor?

Hay muchos aceleradores PHP que se pueden utilizar en los servidores. Nosotros vamos a nombrar y a explicar los más extendidos.

eAccelerator: El más popular de todos y el más extendido. Viene preconfigurado dentro de las opciones de los servidores con Cpanel para APACHE/PHP. Nos puede disminuir la carga del servidor entre dos y 10 veces menos.

eAccelerator

APC (Alternative PHP Cache): Es open source gratuito y muy bueno para cachear los códigos php intermedios. Incluye un Script para consultar estadísticas de rendimiento del APC.

Descargar APC

XCache: Uno de los más utilizados, uno de sus desarrolladores es el mismo que ha diseñado LIGHTTPD. También cuenta con un panel de estadísticas de rendimiento como APC pero es menos atractivo visualmente. De calidad y rendimiento es similar a APC, por lo que se puede usar uno u otro.

Descargar XCache

La elección del uso de un tipo de Acelerador de PHP u otro no es fácil. Todos rinden bastante bien y hacen sus funciones de manera correcta, no obstante dependiendo de las características de cada Servidor, puede ser mejor el uso de uno en vez del otro. Recomendamos que se experimenten todos y dada la experiencia individual de cada uno, se elija el que mejor rinda en tu servidor web.

Pasos para instalar el Acelerador PHP

Para instalar cualquiera de los paquetes de Aceleradores PHP debes de disponer de un servidor VPS o DEDICADO y disponer de acceso SHELL, de lo contrario tendrías que solicitar a tu proveedor de Hosting que te realice dicha instalación ya que no tendrías acceso para poder hacerlo tú mismo. En Hostings compartidos no tendrías opción a instalar ningún acelerador de PHP ya que esto afectaría a las demás Webs alojadas en el mismo servidor y los mismos proveedores de Hosting no lo permiten para mantener la seguridad y evitar errores.

Instalar usando PECL

El Acelerador APC puede ser instalado usando PECL en el Cpanel del servidor Linux.

1) Ejecutar el siguiente comando en Shell como usuario Root:

pecl install apc

y selecciona las opciones que se requieren.

2) Actualiza y añade lo siguiente en el archivo php.ini:

extension=”apc.so”

3) Reiniciar el servicio Apache con el siguiente comando:

# /etc/init.d/apache2 restart

(Se puede reiniciar el servidor Apache desde el mismo panel de control Cpanel o Plesk)

Instalar en Servidores Linux

1) Entrar en Shell e identificarse como usuario Root y escribir el siguiente comando:

#cd /usr/local/src

2) Ir a http://pecl.php.net/package/APC y copiar el link de descarga de la versión de APC que se desea instalar. Una vez realizado esto, escribir el siguiente comando con el link de descarga de la versión APC.

#wget http://pecl.php.net/get/APC-3.1.19.tgz

3) Extraer el archivo con el siguiente comando:

#tar -xzf APC-3.1.19.tgz

cd APC-3.1.19

phpize

./configure –enable-apc –enable-apc-mmap –with-apxs –with-php-config=/usr/local/bin/php-config

make

make install

4) Comprobar la localización del archivo PHP escribiendo lo siguiente:

# php -i | grep php.ini

5) Añadir la extensión instalada editando el archivo php.ini y añadiendo la siguiente línea:

extension=”apc.so”

6) Proceder a reiniciar el servidor Apache escribiendo el siguiente comando:

# /etc/init.d/apache2 restart

(Se puede reiniciar el servidor Apache desde el mismo panel de control Cpanel o Plesk)

7) Se debe de comprobar los módulos de PHP para ver que todo se haya instalado correctamente.

Nota: Si el sistema operativo es Centos 5.5, entonces instalar el módulo PCRE si no está instalado, con el siguiente comando:

# yum install pcre-devel

Para instalar el Acelerador, tenemos que disponer de acceso SHELL para poder escribir los comandos que se explican a continuación:

1) Entramos en el siguiente directorio:

cd /usr/local/src

2) Descargamos y descomprimimos el paquete de instalación del Acelerador (Hay que escribir la URL correspondiente que nos dirige a la descarga directa del paquete desde la página oficial http://eaccelerator.net/:

wget https://github.com/eaccelerator/eaccelerator/tarball/master -O eaccelerator.tar.gz
tar zxvf eaccelerator.tar.gz

3) Accedemos a la carpeta:

cd eaccelerator

4) Preparamos el entorno de compilación de la extensión de PHP:

phpize

./configure
make
make install

5) Es una aplicación para construir automáticamente paquetes RPM/Debian

checkinstall

6) Creamos el archivo para editar la configuración del Acelerador:

nano /etc/php5/conf.d/eaccelerator.ini

7) Agregamos las siguientes líneas al archivo eaccelerator.ini creado:

extension=”eaccelerator.so”
eaccelerator.shm_size=”128″
eaccelerator.cache_dir=”/var/cache/eaccelerator”
eaccelerator.enable=”1″
eaccelerator.optimizer=”1″
eaccelerator.check_mtime=”1″
eaccelerator.debug=”0″
eaccelerator.filter=”»
eaccelerator.shm_max=”0″
eaccelerator.shm_ttl=”0″
eaccelerator.shm_prune_period=”0″
eaccelerator.shm_only=”0″
eaccelerator.compress=”1″
eaccelerator.compress_level=”9″

8) Creamos la carpeta para la caché del paquete:

mkdir -p /var/cache/eaccelerator

9) Le asignamos los permisos de acceso:

chmod 0777 /var/cache/eaccelerator

10) Reiniciamos el servidor Apache para que los cambios tengan efecto:

/etc/init.d/apache2 restart

11) Podemos crear un archivo para poder ver la configuración desde el navegador:

echo ” > /var/www/phpinfo.php

12) Verificamos la información escribiendo la siguiente url en el navegador:

http://localhost/phpinfo.php

Para poder instalar este Acelerador, se deberá de disponer de acceso SHELL para poder escribir los comandos que se indican a continuación.

Instalación en sistemas operativos RHEL/CentOS/Fedora Linux

1) Descargamos el paquete de instalación del Acelerador desde la página web del desarrollador http://xcache.lighttpd.net/pub/Releases/ y elegimos la URL de descarga correspondiente a la versión del Acelerador que deseamos instalar y escribimos el siguiente comando sustituyendo la url que indicamos por la que has elegido (en este caso tenemos como referencia la versión 3.0.1)

wget http://xcache.lighttpd.net/pub/Releases/3.0.1/xcache-3.0.1.tar.gz

2) Descomprimimos el paquete descargado y accedemos al directorio donde está ubicado:

3) Finalizada la descarga descomprimimos el archivo y accedemos al directorio del xcache(xcache-3.0.1)

tar xzvf xcache-3.0.1.tar.gz
cd xcache-3.0.1

4) Realizamos la compilación y la instalación del paquete descomprimido:

phpize
./configure –enable-xcache
make
make xcachetest
make install

Dependiendo de la arquitectura de cada sistema operativo, el paquete será instalado en un directorio diferente según lo que indicamos a continuación:

64 bit: /usr/lib64/php/modules/xcache.so
32 bit: /usr/lib/php/modules/xcache.so

5) Creamos y editamos el archivo de configuración del Acelerador (En este caso utilizaremos el nano, pero se puede utilizar cualquier editor de texto plano):

touch /etc/php.d/xcache.ini
nano /etc/php.d/xcache.ini

Introducimos el siguiente contenido:

xcache-common]
; change me – 64 bit php => /usr/lib64/php/modules/xcache.so
; 32 bit php => /usr/lib/php/modules/xcache.so
zend_extension = /usr/lib64/php/modules/xcache.so

[xcache.admin]
xcache.admin.auth = On
xcache.admin.user = «admin»
; xcache.admin.pass = md5($your_password)
xcache.admin.pass = «»

[xcache]
xcache.shm_scheme = «mmap»
xcache.size = 32M
xcache.count = 1
xcache.slots = 8K
xcache.ttl = 3600
xcache.gc_interval = 300

; Same as aboves but for variable cache
; If you don’t know for sure that you need this, you probably don’t
xcache.var_size = 0M
xcache.var_count = 1
xcache.var_slots = 8K
xcache.var_ttl = 0
xcache.var_maxttl = 0
xcache.var_gc_interval = 300

; N/A for /dev/zero
xcache.readonly_protection = Off

xcache.mmap_path = «/dev/zero»

xcache.cacher = On
xcache.stat = On

6) Guardamos los cambios realizados en xcache.ini y reiniciamos el servidor apache con el siguiente comando:

service httpd restart

7) Comprobamos si todo ha salido bien y el módulo está siendo ejecutado correctamente:

php -v


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

quince − cinco =

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.plugin cookies

ACEPTAR
Aviso de cookies