rRedis ストア

その RedisStore は、インターフェースのRedis対応実装で、 ストア を提供します セッションごとの分散キー・バリュー・ストレージ Redissonの RMap. 接続された各クライアントは、その専用のRedisマップを受け取ります。マップはその sessionIdで識別され、クラスタ化された環境の複数ノード間でセッションデータに一貫してアクセスできるようにします。

主な特徴

  • セッションごとの分散ストレージ — セッションデータはローカルメモリではなくRedisに保存されます

  • ノード間の可視性 — 同じRedisインスタンスを共有する全てのサーバーから値にアクセスできます

  • バックエンド構成による永続性 — Redisが稼働している限り、データはJVM/ノードの再起動をまたいで残ります

  • セッションごとの専用キー空間 — 各セッションは独自の RMap をセッション識別子を使って作成します

  • 任意のEventStoreとプラグ可能 — Kafka、Redis Streams、Hazelcast、NATSなどと組み合わせ可能です

仕組み

  • set(key, value) このセッションのためにRedisマップに値を書き込みます

  • get(key) Redisから値を取得します

  • has(key) 分散マップ内でキーの存在を確認します

  • del(key) マップから単一のキーを削除します

  • destroy() クライアント切断時などにセッションマップ全体を削除します

利点

👍 セッションデータは全ノードで利用可能 — 水平スケーリングをサポートします 👍 Redisが稼働している限りサーバー再起動に耐えます 👍 分散イベント伝播の構成と自然に整合します 👍 任意のEventStoreバックエンドとストレージを混在させることができます (例: RedisStore + KafkaEventStore, RedisStore + HazelcastRingBufferEventStore)


要約

RedisStoreはRedisをバックエンドとした、セッションごとの分散ストレージを提供し、 セッションデータを複数のsocketio4jノード間で可視化し永続化します。 セッション状態を共有する必要があるクラスタ展開に最適です。

最終更新

役に立ちましたか?