Redisパブサブとは?
れでぃすぱぶさぶ
Redisパブサブとは、Redisが提供するメッセージングの仕組みで、送信側(パブリッシャー)がチャンネルにメッセージを送ると、購読中の受信側(サブスクライバー)に即時配信される機能のことです。
Redisパブサブ(Pub/Sub)とは、インメモリデータストアのRedisが標準機能として備えるメッセージブローカー機能です。「パブリッシュ(Publish)/サブスクライブ(Subscribe)」という設計パターンに基づき、メッセージの送受信を疎結合に実現します。
仕組みの概要は次のとおりです。
- チャンネル: メッセージが流れる論理的な経路。送受信側が同じチャンネル名を指定することで通信する
- パブリッシャー: PUBLISH コマンドでチャンネルにメッセージを送信するクライアント
- サブスクライバー: SUBSCRIBE コマンドでチャンネルを購読し、届いたメッセージをリアルタイムに受け取るクライアント
Redisパブサブの特徴として、メッセージは「配信した瞬間に受け取っていないサブスクライバーには届かない」というファイアアンドフォーゲット方式を採用しています。このためメッセージの永続化は保証されません。一方、非常に低レイテンシで大量のメッセージを捌ける点が強みです。
代表的な活用場面としては、チャットアプリのリアルタイムメッセージ配信、マイクロサービス間のイベント通知、ゲームのスコア更新通知、ダッシュボードへのライブデータ配信などがあります。メッセージの確実な配達が必要な場合はRedis Streamsや専用のメッセージキュー(RabbitMQ、Kafkaなど)との組み合わせも検討されます。
使い方・例文
チャットアプリの開発において、あるユーザーがメッセージを投稿した際に、同じチャットルームを購読している他のユーザー全員へリアルタイムで通知を届けるためにRedisパブサブが利用されます。
この用語をシェア
最終更新: