こんにちは、私は本当にRabbitMQを新しくしています。私は、RPCパターンを実装したいが、複数のクライアントと1つのサーバで実装したい。誰でもこれを実装する反応的な方法をお勧めしますか?私はちょっと私が1つのクライアントを実装しているコードを懸念しているし、1つのサーバーはブロッキングの問題を導入するだろう、理想的には私はクライアントがかなり迅速に応答を取得したい。いかなる勧告やアプローチも歓迎されます。乾杯。RabbitMQ RPC複数の送信者1つの受信者
答えて
まずまっすぐ用語を取得する:RMQコンテキストで
- を、RMQは、そのクライアントの生産者と消費者のあるブローカー(サーバー)です。
- RPCコンテキスト(例:the tutorial)には、RPCクライアントとRPCサーバーがあります。したがって、これをRMQコンテキストにマップすると、RPCクライアントはRMQプロデューサとRMQコンシューマの両方(実際には要求を送信して応答を受け取るため)であり、RPCサーバはRMQコンシューマとRMQプロデューサの両方です
これでチュートリアル(前述のリンク)で行ったのと同じ方法で実装すれば、問題はありません。もっと多くのリクエストを並行して処理できるように、より多くのRPCサーバーを起動するだけです。
アレクシーの質問に答えることができます。ビジネス上の問題は、かなり古い会計ソフトウェアと通信する必要のあるウェブサイトがあることです.APIのAPIは、ネットワークを介して長時間接続しているデスクトップアプリ向けです。ベンダーはこのシナリオでスレッドの問題をサポートしておらず、この問題を暗示しています。したがって、私たちの次のアプローチは、WebアプリケーションにRabbitMQにメッセージを送信させ、キューに待機するアカウンティング・アプリケーションに永続的に接続されたコンソール・アプリを持って、プロセスが長すぎないことをWebアプリケーション・ユーザーに通知できるようにすることですトランザクションが処理された/キューに入れられた – user1102550
チュートリアルからcantSleep(私は別のものを使用しました)に戻ります。パフォーマンス/賢明なアーキテクチャアプローチから。 RPCクライアントは、呼び出しごとにWebアプリケーション用の一時的なキューを作成し、それを元に戻すことは可能ですか?私は現時点で私のコンピュータではないので、私はチュートリアルを実行することはできません。しかしそれを見ると、1つのキューが作成されます。 1つのキューでボトルネックが発生する可能性があることにちょっと気をつけてください。私はトランザクションの持続時間の最後に一時的なキューを作成するいくつかの例を見てきました。それはもっとスケーラブルな方向ですか? – user1102550
- 1. ブロードキャスト送信者と受信者のペア
- 2. 受信者なしで複数の受信者にメールを送信他のユーザーに送信する
- 3. androidmanifest複数の受信者
- 4. JavaMail - 複数の送信者
- 5. 電子メール送信者と受信者間の仲介者
- 6. Rails:複数の受信者にメールを送信せずに
- 7. VB.NETで複数の受信者に電子メールを送信
- 8. 複数の受信者に電子メールを送信する
- 9. 複数の受信者をsmtpメールで送信する
- 10. 送信者と受信者のMPI_BCASTとの暗黙の同期
- 11. GemFireのWANゲートウェイ、送信者/受信者のメンバー
- 12. プライベートブロードキャストの送信者と受信者のアクセス許可
- 13. Jetson TX1のUDP/TCP経由のGstreamer送信者と受信者
- 14. 複数の受信者のフィールド
- 15. php複数の受信者のメール
- 16. golangポインタ受信者と値受信者
- 17. php mail bcc複数の受信者
- 18. PHPメーラー複数の受信者
- 19. sendgrid複数の受信者c#
- 20. 複数の受信者にlogstashメール
- 21. 各マイクロポストに送信者と受信者のユーザープロファイルを表示
- 22. 受信者IDと送信者IDによるSQLグループのメッセージ
- 23. RPCでは、受信者は送信者アーキテクチャをどのように識別しますか?
- 24. UDP recv/recvfrom複数の送信者
- 25. 添付ファイル付きの複数の受信者にメールを送信する
- 26. Yii2メーラーの複数の受信者にメールを送信する方法
- 27. デバイスメディアボタンの受信者
- 28. Javamail受信メール返送メールとして送信者に返信
- 29. Docusign 1対1で複数の署名者に複数の封筒を送信
- 30. git commit電子メールを複数の受信者に送信できますか?
どのようなビジネス上の問題を解決する必要があるのですか? –