WCFとマルチスレッドに関するいくつかの質問があります。 スレッドプールにアイテムを配置し、MSMQキューからのメッセージを処理する予定です。 私もWASでWCFを開催します。TransX WCFとマルチスレッド
この時点でスレッドがどのように機能するのか不思議です。たとえば、WCFのMSMQキューへのバインドによってメッセージが取得され、WASが必要なときにサービスを起動することがわかります。しかし、処理するメッセージが100件あるとします(たとえば、1秒あたり100メッセージ)。これは、スレッド形式または単一スレッド形式で配信されますか?
スレッド化された方法でトランザクションをコミットまたはアボートするにはどうすればよいですか?特別な考慮事項?
申し訳ありませんが、これを明確にする必要があります。
PerCallのアプローチを使用した疑いがありました。私はnetMSMQBindingを使用するつもりはないが、統合バインディング。これは行動を変えるでしょうか? –
私はInstanceContext設定が、他のバインディングに適用されるのと同じ方法でmsmqIntegrationBinding用に構成されたWCFサービスに適用されることを確信しています。 msmqIntegrationBindingとnetMsmqBindingの違いは、msmqIntegrationBinding構成では、操作のパラメーターが標準の.NETタイプではなく厳密に型指定されたMsmqMessageインスタンスであることです。 –
ありがとうございます。私はそれほど大丈夫だとは思いましたが、確信はありませんここで結論は本当にPerCallを使用することです?トランザクションについては、サービスへの各リクエスト(各リクエストはWCFサービスを呼び出す1つのメッセージ)を呼び出すかのように心配する必要はありません。私はすべてのAFAIKでPerSessionを使用しません。それは "WCF - ここにMSMQメッセージです"の問題です。 - それからサービスはそれを受け取り、私が望むmsgを処理しますが、私はそれを2つの他のアウトバウンドキューの1つに置きます。 –