私はMagento 1.9.0.1を使用しています。Magentoキャッシュ(AWS ElastiCache)をホストしているRedisサーバーが時々ダウンします。これが発生すると、MagentoはRedisが再び使用可能になるまで致命的なエラーを引き起こします。
これはすぐに答えるのは難しい質問かもしれませんが、どうしてMagentoがRedisに接続できないとき、致命的なエラーではなく、キャッシュが無効になっているように動作できないのでしょうか。
私はMagentoにこの機能を提供する設定やモジュールについては知りませんが、表面的には難しくないようです。Magentoはlocal.xml
、データベースとキャッシュバックエンドへの接続方法を把握するために使用します。次に、データベースに接続し、キャッシュオプションを調べて、キャッシュを使用するかどうかを確認します。特定のキャッシュを使用するようにデータベースから指示された場合は、いくつかのフラグ(おそらくグローバル変数またはシングルトンのプロパティ)を切り替え、残りのリクエストにキャッシュバックエンドを使用します。接続エラーが発生した場合、そのリクエスト中にMagentoにこれをオフに戻させることはできませんか?
遅いサイトは致命的なエラーよりも優れています。
編集:明らかに、一部の人々は私が尋ねていることを理解していないか、実際にこの投稿を読んでいません。
Redisがプライマリキャッシュストレージメソッドとして使用されているときに、Redisが使用できない場合にMagentoに致命的なエラーなしで機能するモジュールを提供しますか?
そうでない場合、なぜこれが不可能であるか、または非常に難しいのかについて誰かに教えてもらえますか?