Redis ストア
その 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ノード間で可視化し永続化します。 セッション状態を共有する必要があるクラスタ展開に最適です。
最終更新
役に立ちましたか?