8

VB 6.0アプリをVB.Net(Framework 3.5)に移植する必要があります。アプリケーションはMSMQを多用します。私は、優れたoleSystem.MessagingよりもWCFを使用することの利点を理解しようとしています。System.Messagingを使用する場合、潜在的なショートッパーはありますか?

4

5 に答える 5

7

「 MotleyQueue」Webサイト(「web」:優れたリンク!)からのこの引用は、それを最もよく要約していると思います。

* WCFプログラミングモデルは、ビジネスオペレーションを中心にしています。これにより、メッセージトランザクションの管理、メッセージプロパティの設定、キュー内のメッセージの検索、NACKSのチェック、メッセージの再試行などを停止できます。代わりに、ビジネスオペレーション(CreatePurchaseOrderなど)の観点から世界を考え始め、集中することができます。あなたのビジネスロジックに。退屈なことはWCFに任せてください。*

これは、一言で言えば、WCFが達成しようとしていることです。多くの配管や複雑さから解放され、解決したいビジネス上の問題に集中できるようになります。

私の投票はWCFにあります!:-)

マーク

于 2009-08-21T05:28:38.087 に答える
3

MotleyQueueのWebサイトを確認する必要があります。 System.MessagingとWCFには良い比較があります。WCFは、はるかにクリーンで使いやすくなります。

于 2009-08-20T20:24:55.310 に答える
3

WCFがSystem.Messagingよりも簡単/クリーンであるかどうかについては、私は少し意見が分かれています。System.Messagingは、非常にシンプルなAPI(全体)を備えており、気になるのがそれだけであれば、比較的簡単に使用できます。ただし、WCFにはいくつかの優れた点がありますが、決して単純ではありません。

問題が発生するかどうかについては、VBアプリケーションが現在MSMQをどのように使用しているか、および送信しているデータの種類に大きく依存します。MsmqIntegrationBindingバインディングを使用します。これは多少役立ちますが、VBアプリがWCFですぐに処理できる形式でメッセージを送信しない場合は、メッセージの逆シリアル化を正常に処理するためにいくつかのトリックを実行する必要があります。

于 2009-08-21T03:34:45.447 に答える
2

私は個人的にMSMQが大好きで、それに合わせます。

私にとっての主な「落とし穴」は、メッセージごとに4メガに制限されているということでした。ラージオブジェクトグラフをシリアル化する場合は問題がありますが、最初にディスクにシリアル化してファイル名を送信するだけで簡単に修正できます。

他の投稿者の1人がコメントしたように、MSMQは「新機能」を取得できない可能性がありますが、IMHOは安定しており、非常にスケーラブルであり、必要なすべての機能をそのまま備えています。

于 2009-08-21T03:37:34.160 に答える
1

WCFを使用すると、明確な前進パスが得られます。System.Messagingがどこにでもあるとは思えませんが(System.Runtime.Remotingを参照)、WCFで新しい開発が行われ、他のテクノロジが発生したときに移行する機会が与えられます。これにより、特定のトランスポート実装に縛られることから解放されます。

WCFプログラミングモデルも非常にクリーンで快適です。

于 2009-08-20T20:22:44.363 に答える