0

私のアプリケーションでは、membase を介して異なるサーバー上の異なるノードに配布するグローバルな状態があります。

ノード自体には、グローバル状態が変更されたときに通知する必要があるクライアントがありますが、私が見る唯一の方法は、状態を membase からポーリングし、変更されたときにクライアントに送信することです。そのため、変更が発生したときにクライアントとサーバーの間でのみトラフィックが発生しますが、ノードの非ブロッキング IO の意味ではなく、サーバーと membase の間で一定のトラフィックが発生します。

より良い方法はありますか?

4

1 に答える 1

0

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

Nodeを使用したRedisのpub-sub機能の詳細を読む:

http://howtonode.org/redis-pubsubnodeJS
でのPub/subの実装
http://laktek.com/2010/05/25/real-time-collaborative-editing-with-websockets-node-js-redis/

于 2011-12-29T06:55:34.697 に答える