Actualizar automáticamente la caché


8

Me gustaría actualizar todo el caché a intervalos específicos, como una vez al día a medianoche (como ejemplo). ¿Cómo puedo lograr esto?

Estoy usando CE 1.9.1.


1
establecer un trabajo cron y borrar el caché
MeenakshiSundaram R

OK, básicamente estoy preguntando cómo hacer eso. ¿Cómo configuro un cronjob para esto?
Tijdschriftenzo

¿Has configurado magento cron en tu servidor?
Amit Bera


1
si actualiza la memoria caché a intervalos, volvería a evaluar su implementación.
B00MER

Respuestas:


14

Si está en su sistema magento, magento cron jobs are working properlyusted define a cronjobqué fuego en la medianoche y borra el caché .

<crontab>
    <jobs>
        <clean_cache_midnight><!-- identifier -->
             <schedule>
                 <cron_expr>0 0 * * *</cron_expr> <!-- run cronjob on midnight -->
             </schedule>
            <run>
                <model>MyModule_Model_Group_Class_Name::functionName</model>
            </run>
        </clean_cache_midnight>
    </jobs>
</crontab>

Y la clase es

<?php
class [ModuleNameSpace]_[ModuleName]_Model_Mycron
{
    public function functionName(){

     /**
     * Flush all magento cache
     */
     Mage::app()->cleanCache();
    }
}

Módulo completo:

crear config.xmlen app / code / community / Amit / Cleancache / etc /

<?xml version="1.0" encoding="utf-8"?>
<config>
<modules>
    <Amit_Cleancache>
        <version>1.0.0</version>
    </Amit_Cleancache>
</modules>
    <global>
        <models>
            <cleancache>
                <class>Amit_Cleancache_Model</class>
            </cleancache>
        </models>
    </global>
    <crontab>
        <jobs>
            <clean_cache_midnight><!-- identifier -->
                 <schedule>
                     <cron_expr>0 0 * * *</cron_expr> <!-- running cronjob on midnight -->
                 </schedule>
                <run>
                    <model>cleancache/Fire::fireCacheonMidnight</model>
                </run>
            </clean_cache_midnight>
        </jobs>
    </crontab>
</config>

Archivo2: crear Fire.php en app / code / community / Amit / Cleancache / Model /

código:

<?php
class Amit_Cleancache_Model_Fire
{
    public function fireCacheonMidnight(){

     /**
     * Flush all magento cache
     */
     Mage::app()->cleanCache();
    }
}

File3: archivo de configuración del módulo Amit_Cleancache.xml en app / etc / modules /

<?xml version="1.0" encoding="utf-8"?>
<config>
    <modules>
        <Amit_Cleancache>
            <active>true</active>
            <codePool>community</codePool>
        </Amit_Cleancache>
    </modules>
</config>

El config.xml genera este error: "Esta página contiene los siguientes errores: error en la línea 14 en la columna 14: Apertura y finalización de la falta de coincidencia de etiquetas: modelos de línea 0 y global A continuación se muestra la página hasta el primer error. 1.0. 0 Amit_Cleancache_Model "
Tijdschriftenzo

la etiqueta no estaba cerrada ... he actualizado la respuesta ... ahora compruebe
Amit Bera

Genial, funciona como un encanto!
Tijdschriftenzo

@AmitBera ¿Cómo puedo configurar el trabajo cron en mi servidor, como todas las noches autorefresh cache y reindex?
zus

@AmitBera He creado un código simple para borrar el caché. El código es: justpaste.it/6rjvd y configuración cron: snag.gy/AZowtf.jpg . Todavía cron no funciona, ¿es correcto lo que hice?
Gema

-1

En Magento> gestión de caché> las 3 últimas opciones de caché:

Imágenes adicionales del catálogo de vaciado de gestión de caché Caché Archivos de imágenes de productos pregenerados. Flush Swatch Images Cache Archivos de imágenes de muestras configurables pregeneradas. Vaciar JavaScript / CSS Cache Temas JavaScript y CSS combinados en un solo archivo.

¿Es posible vaciar estos tipos de caché usando un trabajo de cron automático?

Razón de ser :

Si no borro estos cachés regularmente, entonces la cosa REDIS falla y todo se bloquea.

Gracias :)

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.