Sto lavorando con Magento 1.9.0.1, e ogni tanto i nostri server Redis che ospitano la cache Magento, (AWS ElastiCache) verranno disattivati. Quando ciò accade, Magento si guasta fatalmente fino a quando Redis non sarà nuovamente disponibile.
Questa potrebbe essere una domanda difficile a cui rispondere rapidamente, ma quello che mi chiedo è perché Magento non può agire come se la cache fosse disabilitata quando non è in grado di connettersi a Redis, invece di sbagliare fatalmente?
Non sono a conoscenza di alcuna impostazione o modulo che dia a Magento questa capacità, ma in superficie non sembra difficile. Magento usa local.xml
per capire come connettersi al database e ai backend della cache. Quindi si collega al database e osserva le opzioni della cache per sapere se utilizzare o meno la cache. Se richiesto dal database di utilizzare una determinata cache, cambia alcuni flag (probabilmente una variabile globale o la proprietà di un singleton) e utilizza il backend della cache per il resto della richiesta. Magento non potrebbe essere fatto per disattivarlo durante quella richiesta se si verifica un errore di connessione?
Un sito lento è meglio di un errore fatale.
Modifica: Evidentemente alcune persone non capiscono cosa sto chiedendo o non hanno effettivamente letto questo post.
Esiste un modulo che darà a Magento la possibilità di funzionare senza errori fatali quando Redis non è disponibile, quando Redis viene utilizzato come metodo di archiviazione della cache principale.
In caso contrario, qualcuno potrebbe illuminarmi sul perché questo non è possibile o è molto difficile?