1

私は現在、いくつかのニーズに対してSpring Integrationをうまく使用しています。素晴らしい..

同じメッセージが複数回処理されているように見える、重い負荷で奇妙な動作が観察されます。データベースには複数の行があり、これは通常、チャネルを介して構成されたチェーンの最後のコマンドであるため、確認できます。

マニュアルをさらに掘り下げると、負荷分散はスプリングによって自動的に行われるようです。マニュアルによると、メッセージは複数のメッセージ ハンドラー間でバランスが取れています。

質問は:

  1. デフォルトでチャネルに存在するハンドラーの数は? ロードされるSpring XMLには、その構成がないようです。私がすることはこれだけです(マニュアルの推奨に従って):
<int:channel id="SwPath.Channel"/>
<int:chain id="SwPath.chain" input-channel="SwPath.Channel">
</int:chain>

フェイルオーバーを無効にすることはできますが、デフォルトでいくつ存在するか知りたいです。

4

1 に答える 1

0

これらのロード バランサに取り組んでからしばらく経ちましたが、スレッド プールのデフォルトのスレッド数が 2 ~ 10 の間だったことを覚えています。

並行性のバグが見つかった可能性があります。

TRACE ロギングをオンにすると、ロード バランサーは多くの情報を提供しますが、問題を簡単に隠すことができます。

JUnit テスト ケースを使用して JIRA の問題を作成すると、正確に何が起こるかを把握するのがはるかに簡単になると確信しています。

于 2012-10-18T12:19:24.660 に答える