1

こんにちは:)私はWCFにまったく慣れていません。これは、あらゆる種類の同時実行を扱うのは初めてなので、ご容赦ください。

私がやりたいことは、複数のクライアント (10 または 11 以下) によって消費されるサービスの単一のインスタンスを持つことです。クライアントがサービス操作を消費するときに、クライアントが互いに待機するようにします。このようにして、データベース内のエントリの誤った更新を回避する必要があります。操作は十分に高速であるため、パフォーマンスに大きな影響はありません。よくわかりませんが、私の理解では、ConcurrencyMode.Singleでシングルトンサービスを使用する必要があることを達成するには、そうですか? その目標を達成する方法についての包括的な読み物は大歓迎です。

また、同時実行を処理するためのより優れたエレガントな方法があるかもしれないことも認識していますが、時間が非常に短く、正しく理解していれば、この方法が実装するのに最も簡単で最速の方法のようです。

4

1 に答える 1

3

ここでできる最悪のことは、シングルトン サービスです。

データベース エンジン (ほとんどのエンジン) は、同時呼び出しに適しています。同時実行機能を制限したいのは何ですか?

最適な方法は、呼び出しごとのステートレス WCF サービスです。
データの一貫性のために、オプティミスティック コンカレンシーを使用します。これを簡素化するために、Entity Frameworkなどの任意の ORM を使用できます。

于 2012-05-31T19:21:44.993 に答える