問題タブ [socket.io-redis]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
2326 参照

node.js - socket.io-redis を使用して別の socket.io サーバーにメッセージを送信するにはどうすればよいですか?

2 つの異なる socket.io サーバーが相互に通信する必要があります。接続と接続socket.io-clientの区別がつかないので使えません。だから私は使用しようとしています。browser to serverserver to serversocket.io-redis

1 つは express-socket.io サーバーで、もう 1 つはスタンドアロンの socket.io サーバーです。どちらもsocket.io-redisアダプターを使用するように構成されています。Server2 から Server1 で受信したメッセージが表示されません。また、エラーはありません。

サーバー1:

サーバー2:

0 投票する
1 に答える
2044 参照

node.js - リアルタイムのデータテーブルの更新

socketio を使用して redis チャネル (販売者) からデータを消費し、リアルタイムでデータをフロントエンドにプッシュするアプリを作成しました。データセットには最大 1000 行を含めることができるので、データテーブルを使用してデータをきれいに表現することを考えています。テーブル要素は定期的に更新されますが、追加/削除する行はなく、更新のみが行われます。

私が直面している問題は、ビジュアライゼーション エコシステムの経験が浅いため、どの方法を実装するのが適切なのかがわからないことです。私はd3jsをいじっていましたが、何かをすぐに準備するのは難しすぎると思います.datatables jsライブラリも使用しようとしましたが、データテーブルをリアルタイムにする方法がわかりませんでした.

これは、フロント エンドからのコードの抜粋です。

0 投票する
0 に答える
221 参照

node.js - node.jsを使用してマルチポートsocket.ioサーバーを作成するためのステップバイステップの説明

マルチポートsocket.io node.jsサーバーの作成に関する段階的な指示を誰かが手伝ってくれますか?

私の現在の状況では、何百ものクライアントにサービスを提供するために、1 つのポートを備えた socket.io node.js のサーバーが 1 つあります。約1年間、接続ユーザー数は最大400ユーザー。サーバーの数が1つしかないため、この最大数を増やすことはできないと思います。

サーバーの数を増やしたいのですが、記事http://socket.io/docs/using-multiple-nodes/を見つけましたが、理論的すぎるため実装できません。サーバーに関する私の知識は少なすぎます。

段階的に実装するのを手伝ってください。私が今持っているツール:node.js、phpなどで構築された動作中のアプリケーションのすべてのコーディングを保存するcentos VPSサーバーに接続できるパテ.

0 投票する
1 に答える
4791 参照

node.js - socket.io アダプターに関する質問

私は現在、 node.jsクラスターモジュールを利用して同じマシン上で複数のnode.jsプロセスを生成するnode.jsベースのsocket.ioサービスに取り組んでいます。

socket.io のドキュメントには、複数のプロセスが使用されている場合はアダプターを使用する必要があると書かれています。たとえば、現在のプロセスに接続されているクライアントだけでなく、すべてのプロセスに接続されているすべてのクライアントを対象とするブロードキャストが行われます。

  1. すべてのプロセスがローカルで (つまり、複数のサーバーにまたがって) 生成されていない場合でも、このようなアダプターを使用する必要があることを正しく理解していますか?
  2. サーバー プロセスは時々通信する必要があります (一方向のみ、つまり、応答を必要とせずにメッセージをブロードキャストします)。そのようなアダプターが使用されている場合 (例: socket.io-redis )、それを使用してすべてのサーバー プロセスにもブロードキャストできますか? それとも、アダプターは接続されたクライアントをターゲットにするためにのみ使用されますか?
0 投票する
1 に答える
302 参照

node.js - ソケットは 1 つの socket.io プロセスとのみ通信できます

こんにちは、nodejs と socket.io を使用してマルチプレイヤー ゲームを作成しようとしています。クラスターとsocket.io-redisでマルチプロセスsocket.ioを使用しています。メッセージをブロードキャストしたり、エミットしたりしたい場合にうまく機能します。

しかし、コードに複雑さを追加したい場合、問題が発生し始めます。ゲームにマッチメイキング機能を持たせたい。

次のシナリオを想定します。サーバーは、ゲームをプレイして開始したい 2 人のユーザーを見つけます。ユーザーは、同じマシン上の異なるプロセスを使用しています。問題は、クライアントが最初に入ったプロセスとしか通信できないことです。したがって、私が見る限り、3つの可能な解決策があります。

  1. 同じプロセスのユーザーとのマッチメイキング --- よくない。
  2. プロセス間に ipc メソッドを作成して、ターゲット クライアントを持つクライアントがクライアントの回答を正しいプロセスにブロードキャストできるようにします --- 複雑すぎて、すべてを解決できるかどうかわかりません。
  3. ユーザーが気付かないうちに、クライアントの socket.io プロセスを新しいものに変更します --- これが可能かどうかさえわかりません。

私がここに欠けているものはありますか?私が考えられない他の解決策はありますか?

どんな助けでも大歓迎です!