問題タブ [rabbitmq-exchange]

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 に答える
864 参照

rest - プライベート メッセージング用の RabbitMQ 構造

私は現在、ユーザーが互いにプライベートにメッセージを送受信できるメッセージング サービスの構築を検討しています。マルチユーザー チャットが必要な場合もありますが、ほとんどの場合、1 人の受信者のみが送信されたメッセージを読むことができるようにしたいと考えています。

RabbitMQ を見ると、1 つの交換を使用し、ログイン時に各ユーザーのキューを作成し、ログアウト時に各キューを破棄することは理にかなっていますか? ユーザーごとにキューを作成する際に大きなパフォーマンス上の問題がありますか、それともより良い代替手段はありますか?

私は REST API を構築しており、ユーザーがエンドポイント (/send) を介して他のユーザーにメッセージを送信し、websockets または同様のものを介して独自のメッセージ ストリームにサブスクライブすることを計画しています。メッセージはおそらく MongoDB にも保存されるので、ユーザーは以前のすべてのメッセージにアクセスできます。構造に関する提案は大歓迎です。

0 投票する
3 に答える
2847 参照

curl - RabbitMQ: curl からキュー内のメッセージを削除/移動する方法

複数の RabbitMQ サーバーがあります。

これらすべてのサーバーを管理(キュー/交換/メッセージを削除)できるインターフェース(JSPを使用)が必要です。

内部的には、curl コマンドを呼び出して操作を実行します。

例: キューを作成するには

curl を使用してキュー内のメッセージを削除/移動するにはどうすればよいですか?

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

spring - マルチスレッド環境でRabbitmqサーバーに配信されるメッセージの順序は固定されていません

最初に私のコードを見てください。

これは、 2000 のスレッドを作成し、それらのスレッドがメッセージを送信している私のテスト クラスです。

メッセージ送信者

これは私のメインのメッセージ送信者クラスです

メッセージングで使用される構成クラス

私の問題:

  1. サーバーでわかるように、一部のスレッドはメッセージを正常に配信しており、他のスレッドは配信していません。

  2. rabbitTemplate リスナーの確実性はまったくありません(

    rabbitTemplate.setReturnCallback(新しい ReturnCallback() {

毎回動作するリスナーが必要です。これに基づいてメッセージを再度送信しようとするからです

messageSentFlagが false で、Confirm リスナーでのみ true になるため、メッセージが 5 回配信されることがあります。

  1. キューを削除する方法を教えてください。8000 個あるので、rabbitAdmin でキューを削除する方法を 1 つ見ましたが、キューの名前が必要で、私のキューは任意のランダム キュー (UUID) です。

どうすれば改善できますか、または回避策はありますか? 私のアプリケーションでは、マルチスレッド環境が必須です。

前もって感謝します。

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

c# - RabbitMq トピック交換

RabbitMQ トピック交換を使用して、次のシナリオを達成することは可能ですか。

2 つのキューがあるとします。

Queue1: ルーティング キー MainRoute.Route1

Queue2: ルーティング キー MainRoute.Route2

ルーティング キーを使用してメッセージを公開すると、次のようになります。

MainRoute.Route1 -> Queue1

MainRoute.Route2 -> Queue2

MainRoute -> Queue1 および Queue2

特別なフィルタリング、ルーティングプロセスを実装せずにこれを達成することは可能ですか?

そうでない場合は、問題の可能な解決策についてアドバイスしてください。

ありがとうございました。

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

rabbitmq - centos7にrabbitmqサーバーをインストールする

stackoverflow install rabbitmq-serverでこのリンクをたどろうとしましたが、機能していません。エラーの取得 使用可能なパッケージがありません rabbitmq-server-3.3.4-1.noarch.rpm。

取得エラー

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

rabbitmq - Rabbitmq whileループなしでデータを一気に読み込む方法

このようにRabbitMQ(Javaクライアント)からデータを読み込んでいます。

while ループなしでキュー内のすべてのデータを読み取ることはできますか?

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

rabbitmq - RabbitMQ での長時間未確認メッセージ

RabbitMQ キューから注文を受け取るビジネス プロセスがあります。私は、潜在的に長い時間 (10 分以上) 承認しない (つまり、キューに入れておく) ことを考えていました。これは理にかなっていますか?RabbitMQ タスクの上で実行時間の長い処理を処理する最善の方法は何でしょうか?

0 投票する
2 に答える
2350 参照

rabbitmq - rabbitmq の存在しないキューにメッセージを発行するときにコードを中止する方法

サーバークライアントアプリケーションを作成しました。
サーバー側サーバーは、直接交換でルーティング キー key1 を使用してキュー queue1 を初期
化します 初期化と宣言の後、誰かが書き込むたびにデータを消費します。

クライアント側

クライアントは、ルーティング キーkey1を使用して、その交換でいくつかのデータを公開します。
また、公開する前に mandotory フラグを true に設定しました。

問題

サーバーを最初に起動するとすべて問題ありませんが、クライアントを最初に起動すると問題が発生し、ルーティングキーでデータを公開します。クライアントがデータを公開した場合、ブローカーからの例外はありません。

要件
存在しないキューにデータを公開したときに例外またはエラーが発生するようにしたい。