3

私は spring-integration を初めて使用し、Spring Integration を使用して次のシナリオを実装する方法を理解したいと考えています。

次の要件を持つ複数のノード(クラスター内など)を持つ分散アプリケーションを作成しようとしています。

- TCP/IP を介した要求/応答ベースのメッセージングを実装する必要があります。-メッセージ ブローカー (ActiveMQ など) を使用したく
ありません。
・SI が提供する TCP インバウンドおよびアウトバウンドゲートウェイを使用する予定です。

SI が次のことを達成するのにどのように役立つかわかりません
- 同じサーバー側の TCP インバウンド ゲートウェイに複数のクライアントが接続している場合、要求/応答の相関関係はどのように機能しますか?
- TCP/IP 経由でメッセージを送信すると、メッセージ ヘッダーが取り除かれることを理解しています。回避策は何ですか?
- このアプローチは実際に実行可能ですか? :(

ありがとう
サンディップ

4

1 に答える 1

6

ゲートウェイを使用する場合、フレームワークが相関を処理します。

ここにこれを示すサンプルがあります...

https://github.com/SpringSource/spring-integration-samples

(basic/tcp-client-server を参照)。

リファレンスマニュアルにはメッセージ相関に関する議論があります...

http://static.springsource.org/spring-integration/docs/2.1.0.RELEASE/reference/html/ip.html#ip-correlation

ゲートウェイの代わりにアダプターを使用する必要がある場合 (非同期メッセージングが必要な場合や、ゲートウェイのパフォーマンス制限に耐えられない場合)、相関データをメッセージ ペイロードに追加する必要があります。

未解決の JIRA 課題があります

https://jira.springsource.org/browse/INT-1807

一部のヘッダーを TCP 経由で転送できるようにします。ただし、これを行う自然な標準的な方法はないため、SI から SI への通信にしか使用できない可能性があります (または、ピアでカスタム コードが必要になります)。2.2 でそれが実現する可能性があります。もうすぐマイルストーン。投票してください!

それが役立つことを願っています。

更新: 3.0 リリースでは、選択したヘッダーを TCP メッセージに追加することがサポートされています。

于 2012-02-29T17:01:11.847 に答える