tornado websocket チャットの例では、参加者はセット (リンク) に格納されており、単一サーバーの場合に便利です。しかし、アプリケーションの複数のインスタンスを実行し、nginx をロード バランサーとして実行する場合、この場合、どのように参加者を保存するのがよいでしょうか?
2151 次
1 に答える
6
pubsub
Redisの機能を使用することを検討してください。(リンク)
編集 :
クライアントがチャットルームにログオンするsubscribe
と、チャネルにアクセスできますchatroom
。どの竜巻インスタンスを使用しているかは問題ではありません。このモジュールを使用すると、チャネルを非同期でリッスンし続けることができます。
別のクライアントがチャットルームにメッセージを送信した場合 (つまり、チャネルにメッセージを公開したchatroom
場合)、すべてのトルネード インスタンスは、チャネルにサブスクライブした人にメッセージを自動的に送信します。次に、websocket 経由でメッセージを送信できます。
例については、このデモをご覧ください。
于 2013-06-03T09:28:41.017 に答える