モバイルとコンソールのゲーム
グローバル、地域、フレンド限定のボードはそれぞれ別のソート済みセットで、試合のたびに更新されます。
ゲーム、スポーツ、ソーシャルアプリのためのライブランキング。スコアの更新と読み取りは並列に実行されます。
試合が終わり、結果が書き込まれます。
実際のHotKVコマンドと応答例を使ったアニメーションのウォークスルーです。任意のステップをクリックすると、そこに移動します。 コマンドと応答は、HotKVで実際に入力し表示されるとおり英語のままです。
リーダーボードは絶えず書き込まれ、絶えず読み取られます。スコアが変わるたびに順位表が並べ替わる可能性があり、プレイヤーは自分の順位をすぐに見たいと考えます。リレーショナルデータベースで順位を再計算する方法は、トラフィックが増えると持ちこたえられません。
ソート済みセットは、書き込まれた時点でメンバーをスコア順に保つため、順位表の上位もどのプレイヤーの順位も常にすぐ読み取れます。HotKVは多数のワーカースレッドでコマンドを実行するため、スコアの更新と読み取りが1つのスレッドに集中することはありません。
試合が終わり、結果が書き込まれます。
ZADD board:2026-w42 1500 aliceBobがラウンドに勝ちます。スコアが増え、順位がすぐに更新されます。
ZINCRBY board:2026-w42 250 bob書き込みが続く中で、すべてのクライアントと配信オーバーレイが上位を読み取ります。
ZREVRANGE board:2026-w42 0 9 WITHSCORES各プレイヤーが自分の順位を確認できます。
ZREVRANK board:2026-w42 alice週ごとに独自のキーがあり、2週間後に期限切れになります。
EXPIRE board:2026-w42 1209600グローバル、地域、フレンド限定のボードはそれぞれ別のソート済みセットで、試合のたびに更新されます。
週間の連続記録やポイントのランキングは、毎週新しいキーに切り替えるだけで自動的にリセットされます。
結果が次々と届く中、配信のオーバーレイが毎秒順位を読み取ります。
実行すべきランキングジョブはありません。スコアが届くたびに順序が維持されます。
ZADDZINCRBYそれぞれ1つのコマンドで。
ZREVRANGEZREVRANKスコアの更新と読み取りは、1つではなく複数のワーカースレッドに分散されます。
期間ごとに有効期限付きのキーを1つ。
EXPIREboard:2026-w42のように期間ごとに1つのソート済みセットを使い、有効期限を設定します。
はい。ZUNIONSTOREで複数のボードを1つに合算できます。たとえば4つの週間ボードから月間ボードを作れます。
HotKVは複数のワーカースレッドでコマンドを実行するため、スコアの更新と読み取りが1つのスレッドに押し込まれることはありません。
HotKVはRedisプロトコルに対応しているため、既存のクライアントを向けるだけで、これらと同じコマンドを実行できます。