**分散キャッシュは、複数のアプリケーションインスタンスがネットワーク越しにデータを再利用する仕組みです。**目的は高コスト処理の反復を避けることであり、鮮度と障害時のルールを明確にする必要があります。
3つのバックエンドが同じ商品カタログを読むとします。プロセス内キャッシュなら各インスタンスが自分のコピーを管理します。共有キャッシュサービスなら、1つが保存した値を他も使えます。キャッシュサービス自体が複数ノードで構成されることもあります。
1. 安全にキャッシュできるものを決める
データ生成コストと、どれだけ古い値を許容できるかから考えます。商品説明は短い遅延を許せても、購入時の最終在庫確認は正本が必要かもしれません。
テナント、言語、その他の関連入力を含め、結果全体を識別するキーを定めます。不十分だと、高速でも別の顧客のデータを返してしまいます。キャッシュ値は消えるため、永続的な業務記録の正本はデータベースに置きます。
