Ho un sito Web Symfony2 che sto testando in produzione. Sono andato avanti e cancellato il suo cache perché ho fatto e probabilmente apporterò ulteriori modifiche, tuttavia c'è un piccolo problema:Gestione della cache di Symfony in produzione
Mentre il cache viene cancellato e dico, dopo voglio scaldarlo, qualcuno che accede il sito Web ricostruisce la cache. Questo crea un piccolo problema mentre la cache viene costruita, ma non completamente, mentre metà viene eliminata perché la cancellazione è ancora in corso.
In seguito, la cache viene creata, ma solo una parte di essa. Symfony pensa che la cache sia interamente costruita e venga eseguita senza provare a crearla, ma funziona su una cache parzialmente costruita. Il processo di cancellazione è un po 'lungo (~ 15 sec), quindi in questo lasso di tempo nessuno deve provare a creare la cache accedendo al sito web.
O questo, o la cache è completamente compilata, sovrascrive la vecchia cache e il sistema tratta questi nuovi file come vecchi, ne elimina una parte e altri rimangono. Non del tutto sicuro, non sono sicuro di come controllare questo.
Per esempio, uno degli errori che mi piacerebbe avere è
The directory "D:\xampp\htdocs\med-app\app\app\cache\dev/jms_diextra/metadata" does not exist.
Se io non userei quel fascio avrei avuto un altro problema di cache da Doctrine. Questo appare in ogni accesso al sito Web fino a quando non elimino di nuovo la cache SENZA chi accede al sito. blocca completamente l'accesso al sito Web e lo rende non funzionale.
Inoltre, per quanto riguarda il riscaldamento? Anche questo richiede un po 'di tempo. Cosa succede se qualcuno accede al sito Web mentre la cache è in fase di riscaldamento? Non crea anche un conflitto?
Come gestire questo problema? Devo chiudere il servizio Apache, svuotare e svuotare la cache e quindi riavviare Apache? Come viene gestito questo sito Web in produzione?
EDIT Qualcosa di interessante che ho scoperto. Il bug si verifica quando elimino la cartella cache/prod
. Se cancello il contenuto della cartella senza cancellare la cartella stessa, sembra che il bug non si verifichi. Mi chiedo perché.
preferisco rimuovere la cache con 'sudo rm -rf app/cache/*' penso che sia possibile ridurre il tempo che ci vorrà molto –
Come si cancella la cache manualmente, anche l'aggiornamento deve essere fatto manualmente, altrimenti fai riferimento ai commenti di @johnSmith per aggiornarlo automaticamente in meno tempo o disabilitarlo completamente. – Anil
Non posso usare 'rm' come su Windows con xampp. –