Carpe Diem

備忘録

Redis

Redis Clusterを冗長構成で構築

概要 前回はマスターのみでRedis Clusterを構築しました。 christina04.hatenablog.com 今回は冗長構成で構築し、可用性を確認します。 環境 Redis 5.0.7

Redis Clusterの構築と水平スケーリング

概要 christina04.hatenablog.com 前回の続きで今度はRedis Clusterを構築してスケール性などを検証してみます。 環境 Redis 5.0.7 Redis Clusterの特徴 Redis Clusterは以下の特徴を持ちます。 シャード毎にSlotを持ち、データ分散される(hash slot) 全部…

RedisのReplication

概要 Redisの冗長構成は Replication Cluster Sentinel の3種類がありますが、そのうちのReplicationについて説明します。 環境 Redis 5.0.7 Replication Replicationはmasterからデータをreplicaにコピーし、read系コマンドをreplicaから行うことでスケー…

BLPOPで優先順位を付けてタスクキューを実行

概要 タスクキューを操作する時に、特定の処理が他の処理よりも先に実行できるよう優先順位を付けたいケースがあります。 RedisのBLPOPは複数のリストを処理してくれるのでそれを実現できます。 前提 以下の優先度を決めたキューがあるとします。 キュー名 …

データ毎に実行スケジュールが異なる場合の実装方法を考えてみる

概要 Stripeの定期購読を使っていると、各ユーザの定期購読の更新タイミングでWebhook eventがちゃんと飛んできます。 ほぼリアルタイムで届くのでこのwebhookを使う側としては非常に助かる機能ですが、提供する立場から考えるとどうやるんだろう?と悩んだ…