MSMQ に関する誤った情報が大量に出回っています。その主な理由は、メッセージの送受信を適切に設計する方法に関する Microsoft のドキュメントが驚くほど少ないためです。私はこの件に関して MSMQ の本を 2 冊出版しており、インターネットで実用的なデザインを探しています。
そのため、これらの参考文献のいずれも、キュー要件に対するメッセージ タイプが 1 つであるとは述べていません。そして、それは PeakMessage とその亜種を不必要にし、ばかげたものにさえします。マイクロソフトのドキュメントは曖昧で難しいですが、私はそこで働いており、彼らは決して愚かではありません。
CLSID を識別子として使用するという刺激的な提案が常にありますが、これは迷惑なほど近視眼的な慣行です。メッセージタイプをLABELに埋め込んでみてはどうでしょうか??? 次に PeadMessage を使用して、最初の試行でメッセージを適切に受信するためにメッセージ プロパティをフォーマットするために使用できる、特定のキュー用に明確に意図されたメッセージ タイプを含むメッセージが見つかるまで、キューを実行しますか???
これが複雑なコード セットになることは承知していますが、せずに済むでしょうか? それとも、200 のメッセージ タイプを持つ 200 人のユーザーのシステムがある場合、1 対 1 のすべての要件を管理するために 80,000 のキューを作成する必要があることを示唆している上記のレスポンダーの提案を実際に実装しようとしますか? これらのことをよく考えていない人もいます。