読み取りフロー: ヒット時とミス時の 2 つの経路
書き込み時にキャッシュと DB を同期的に更新するフロー
キャッシュのみ同期、DB への反映は非同期で行うフロー
DB 更新とキャッシュ削除の間に別のリクエストが来ると古いデータが返される
base_ttl = 300 # 基本 TTL: 5 分jitter = random(0, 60) # 0〜60 秒のランダム値$ SET key value EX (base_ttl + jitter)
分散ロック1 つのリクエストだけが DB に問い合わせ、他は待機する確率的早期再計算期限切れ前にランダムにキャッシュを更新する