En este how-to vamos a ver dos opciones que tenemos para mejorar el rendimiento en Magento: Magento Cache Management y APC.
Magento es una de las soluciones e-commerce de más rápido crecimiento. Actualmente cuenta con dos ediciones, la versión Enterprise que es de pago (tiene un precio de aproximadamente 11.000 USD anuales), y la versión Community, que es Open Source (el tipo de licencia es el OSL 3.0). Magento es una solución e-commerce muy completa y potente para sitios que necesitan vender en línea, sin embargo, todo esto tiene, por lo general, un precio: el rendimiento.
En servidores alojados en ambientes compartidos (que son la norma) o servidores virtuales básicos (más conocidos como VPS), ésta aplicación sufre en cuanto a rendimiento, ya que necesita de muchos recursos para funcionar correctamente. Los problemas que aquejan en éstos casos, son varios: timeouts, páginas en blanco, tiempos de carga muy largos, etc. Sin embargo, hay opciones disponibles que se pueden utilizar para ayudar a Magento a mejorar su rendmimiento, ellos son el Administrador de Cache de Magento o Magento Cache Management, y APC.
Con estas dos opciones, se pueden obtener mejoras en el rendimiento de Magento, por lo que hoy, vamos a ver cómo podemos combinarlas en nuestro servidor (dv) de Media Temple.
El primer paso que debemos realizar, es configurar e instalar APC en nuestro servidor. Una vez que APC ya esté funcionando en nuestro servidor, habilitamos el Cache de Magento, para ello, ingresamos al Administrador de Magento y navegamos a System » Cache Management. En ésta página, hacemos click en Select All y luego seleccionamos Enable en el dropdown Actions a la derecha, y hacemos click en Submit.
Ahora que Magento ya está utilizando su propio caché, vamos a configurar para que además, utilice APC. Para ello, debemos conectarnos por SSH (o FTP) a nuestro servidor, ir al directorio donde está instalado Magento y editar el archivo local.xml localizado en la carpeta app/etc/ por ejemplo:
/var/www/vhosts/midominio.com/httpdocs/app/etc/local.xml
dentro de la sección global, añadimos lo siguiente:
<cache> <backend>apc</backend> <prefix>midominio</prefix> </cache>
El atributo prefix se refiere al prefijo que APC le va a añadir a las datos cacheados por Magento, de ahí que es una buena idea utilizar un nombre que sea único (puede ser el nombre del dominio u otra palabra que consideremos pertinente). Nuestro archivo local.xml debería de ser parecido a lo siguiente:
<config>
<global>
<install>
<date><![CDATA[Thu, 25 Jun 2009 11:30:07 +0000]]></date>
</install>
<crypt>
<key><![CDATA[k3y]]></key>
</crypt>
<disable_local_modules>false</disable_local_modules>
<resources>
<db>
<table_prefix><![CDATA[]]></table_prefix>
</db>
<default_setup>
<connection>
<host><![CDATA[localhost]]></host>
<username><![CDATA[username]]></username>
<password><![CDATA[p4ssw0rd]]></password>
<dbname><![CDATA[dbname]]></dbname>
<active>1</active>
</connection>
</default_setup>
</resources>
<session_save><![CDATA[db]]></session_save>
<cache>
<backend>apc</backend>
<prefix>midominio</prefix>
</cache>
</global>
<admin>
<routers>
<adminhtml>
<args>
<frontName><![CDATA[admin]]></frontName>
</args>
</adminhtml>
</routers>
</admin>
</config>
Luego, sólo nos resta actualizar el caché (para actualizar los archivos de configuración cacheados): navegamos a System » Cache Management, seleccionamos la opción Configuration (en la columna Cache Type), seleccionamos Refresh en el dropdown Actions y hacemos click en Submit.
Si seguimos el how-to de cómo configurar APC, entonces podemos navegar al archivo apc.php y verificar, en la pestaña User Cache Entries, los datos que Magento ya empezó a cachear (lo vamos a identificar fácilmente ya que todos empiezan con el prefix que definimos anteriormente.
Nuestra tienda online en Magento funciona más rápido ahora!