BizTalk-MSMQロードバランスと高可用性をセットアップするにはどうすればよいですか?
-
02-10-2019 - |
質問
私が理解していることから、MSMQの負荷分散を達成するには、NLBなどのテクノロジーを使用する必要があります。
また、MSMQの高可用性を達成するには、関連するBizTalkホストをクラスターする必要があります(したがって、基礎となるサーバーは、自体にクラスターに含まれている必要があります)。
しかし、Microsoftのドキュメントによると、NLBおよびフェイルオーバークラスタリングテクノロジーは互換性がありません。参照については、このリンクを参照してください。 http://support.microsoft.com/kb/235305
誰かがMSMQの負荷分散と高利用性をどのように達成できるかを私に説明してもらえますか?
前もって感謝します、
m
解決
私は元の答えを編集しました。なぜなら、反省して、私はナンセンスについて話していたと思うからです。
私は、ビズトークでの負荷分散と高可用性の両方を達成することが可能であるとは思わない トランザクション シナリオ。次のサイトで、BizTalk 2006のMSMQ/TからMSMQアダプターへの移行に関する移行に関する考慮事項」をご覧ください。 http://blogs.msdn.com/eldarm/
その投稿を要約するには、いくつかのシナリオがあります。
高可用性(非輸送)
NLBの背後にある複数のBizTalkサーバーにMSMQがあるだけです
高可用性(トランザクション)
このためには、Clustered MSMQホストが必要です。つまり、単一のキューで何らかのロードバランスをとることができません。
可能な半分の解決策の1つは、異なるクラスター化されたホストで、それぞれ異なるキューを処理する2つのMSMQアダプターを作成することです。でも私にはあまり良く聞こえません。
重要なポイントは、トランザクションのクラスター化された動作を必要とする理由を理解することです。これは、順序付けられた配達と複製を確保するためにこれが必要です。
一般に、MSMQのバランスを負うというトラブルには行きません。メッセージがメッセージボックスデータベースに到達したら、BizTalk自体はロードバランスが取れます。 1つのマシンでキュー処理が行われているため、非対称の負荷が見られることは事実ですが、ビズトーク環境の全体的なコンテキストでは、これは重要ではないはずです。
繰り返しますが、単純な高可用性を超えてMSMQをクラスタリングしていることを覚えておく価値があります。
MSMQアダプター受信ハンドラー -MSMQは、リモートトランザクション読み取りをサポートしていません。ローカルトランザクション読み取りのみがサポートされています。 MSMQアダプター受信ハンドラーは、MSMQアダプターでローカルトランザクション読み取りを完了するために、クラスター化されたMSMQサービスのローカルであるホストインスタンスで実行する必要があります。
それは次のものでした MSDN ページ。
この編集された答えが役立つことを願っています - それがあなたの後を求めていたとは思わない、私は間違っているかもしれません、そしてあなたはNLBとトランザクションのMSMQのための実行可能なソリューションを見つけるでしょうが、それについて考えるほど、それはもっとそう思うようです2つのシナリオは互換性がありません。
最後の考えは、サーバー障害に同様の質問を投稿してみることができるということです。少なくとも2つのMVPを含むスタックオーバーフローにいくつかのBizTalk開発者を取得しますが、少なくとも私が作業する場所は、これがそのような質問です。私のネットワーキングチームに。