Я работаю с Magento 1.9.0.1, и время от времени наши серверы Redis, на которых размещается кэш Magento (AWS ElastiCache), выключаются. Когда это происходит, Magento приводит к фатальным ошибкам, пока Redis снова не станет доступен.
На этот вопрос может быть сложно ответить быстро, но меня интересует, почему Magento не может вести себя так, будто кеш отключен, если он не может подключиться к Redis, вместо того, чтобы сделать ошибку?
Мне не известны какие-либо настройки или модули, которые дают Magento эту способность, но на первый взгляд это не кажется сложным. Magento использует, local.xml
чтобы выяснить, как подключиться к базе данных и кеш-систем. Затем он подключается к базе данных и просматривает параметры кэша, чтобы узнать, следует ли использовать кэш. Если база данных указывает использовать данный кэш, она переключает некоторый флаг (возможно, глобальную переменную или свойство синглтона) и использует внутреннюю часть кеша для остальной части запроса. Может ли Magento быть отключен во время этого запроса, если произошла ошибка соединения?
Медленный сайт лучше фатальной ошибки.
Редактировать: Очевидно, некоторые люди не понимают, о чем я спрашиваю, или не читали этот пост.
Есть ли модуль, который даст Magento возможность функционировать без фатальной ошибки, когда Redis недоступен, когда Redis используется в качестве основного метода хранения кеша.
Если нет, может ли кто-нибудь объяснить мне, почему это невозможно или очень сложно?
источник
Ответы:
Все, что вам нужно сделать, это просто исправить 3 проблемы / проблемы:
Очевидно, вы можете изменить код и разместить логику вместо ошибки.
источник