Habilitar caché con APC en Magento

Si bien Magento propone algunas alternativas para caché, las más interesantes tienen que ser activadas a mano, modificando uno de los archivos de configuración.

El instalador de la aplicación, utiliza un template que almacena lo siguiente:

  • fecha de instalación
  • la clave usada para el salt
  • la posibilidad de deshabilitar módulos locales
  • configuración de la base de datos
  • sistema de almacenamiento de las sesiones
  • path del backend

Esos son los parámetros que por defecto, se almacenarán en:

/app/etc/local.xml

Para poder activar el caché, en nuestro caso, utilizando APC, bastará con agregar la siguiente información en el xml mencionado.

<cache>
    <backend>apc</backend>
    <prefix>alphanumeric</prefix>
</cache>

Esto debe agregarse dentro del tag <global> del xml.

Si queremos que esto esté habilitado para cada vez que instalamos la aplicación, lo más sencillo es modificar el template. El mismo se encuentra en:

/app/etc/local.xml.template

Considerando el template y nuestro agregado, el xml modelo quedaría de la siguiente forma:

<config>
    <global>
        <install>
            <date>{{date}}</date>
        </install> 
        <crypt>
            <key>{{key}}</key>
        </crypt> 
        <disable_local_modules>false</disable_local_modules>
        <resources>
            <db>
                <table_prefix>{{db_prefix}}</table_prefix>
            </db>
            <default_setup>
                <connection>
                    <host>{{db_host}}</host>
                    <username>{{db_user}}</username>
                    <password>{{db_pass}}</password>
                    <dbname>{{db_name}}</dbname>
                    <active>1</active>
                </connection>
            </default_setup>
        </resources> 
        <session_save>{{session_save}}</session_save>
        <cache>
            <backend>apc</backend>
            <prefix>alphanumeric_prefix</prefix>
        </cache>
    </global> 
    <admin>
        <routers>
            <adminhtml>
                <args>
                    <frontname>{{admin_frontname}}</frontname>
                </args>
            </adminhtml>
        </routers>
    </admin>
</config>

Ahora si, cada vez que instalemos nuestra copia de la plataforma, APC estará habilitado.