MSMQ を使用して NServiceBus 4.0.4 から良いパフォーマンスを得るのに苦労しています。メッセージが 1 秒あたり約 40 ~ 50 メッセージという遅い速度で着信すると、すべてがうまく機能し、ハンドラーはキューを空に保つことができます。
メッセージ レートを 1 秒あたり平均 400 メッセージ程度に増やすと、ハンドラーはそれ以上処理できなくなります。この時点では、ハンドラーはロジックのない単なる空のハンドラーです。1 秒あたり平均 400 件のメッセージのうち約 300 件をカバーしているようで、メッセージ キューはゆっくりと構築されます。
そして、ここで何が起こるかを理解するのに本当に苦労しています。次に、1 秒あたり 1500 ~ 2000 メッセージのようにさらに増やした場合、ハンドラーはゲームを強化し、1 秒あたり 1500 近くのメッセージを処理します。
NumberOfWorkerThreads
(オン/オフと 0-100)、MaxRetries
(オン/オフと 0-100)、(オン/オフと 0-100)、MaximumConcurrencyLevel
(オン/オフと 0-10000)、(MaximumMessageThroughputPerSecond
オン/オフIsTransitional
) ) この動作に影響を与えるものはないようです。
何千ものメッセージを送信できますが、今日の処理ではキューからメッセージを取り出して破棄しますが、それらを処理することはできません。
これが何に由来するのか、またはバスのパフォーマンスを向上させる方法について何か良いヒントを知っている人はいますか?