2011-12-29 3 views
0

私のアプリケーションでは、私はmembaseを通じて異なるサーバー上の異なるノードに配布するグローバルな状態を持っています。データベースイベントまたはポーリングin nodejs(membase)

ノード自体にはグローバル状態が変更されたときに通知を受ける必要があるクライアントがありますが、変更があった場合にはmembaseから状態をポーリングしてクライアントに送信する唯一の方法があります。 変更が発生したときにクライアントとサーバーの間にトラフィックがあるだけですが、サーバーとmembaseの間に一定のトラフィックがありますが、ノードのノンブロッキングIOの影響を受けません。

良い方法がありますか?

答えて

0

これを達成する最良の方法は、Redisのpub-sub機能を利用することです。チャネルを使用してメッセージを送信すると、すべてのノードがそのチャネルに接続されます。新しいメッセージが受信されると、すべてのノードが反応します。

ノードでのRedisのパブ・サブ機能について詳しく読む:

http://howtonode.org/redis-pubsub
Pub/sub implementation in nodeJS
http://laktek.com/2010/05/25/real-time-collaborative-editing-with-websockets-node-js-redis/

関連する問題