1

你好 :) 我对 WCF 很陌生,这是我第一次处理任何类型的并发,所以请多多包涵。

我想要做的是拥有一个服务实例,它将被多个客户端(不超过 10 或 11 个)使用。我希望客户端在使用服务操作时相互等待。这样我应该避免数据库中条目的错误更新。这些操作足够快,因此性能不会受到太大影响。现在我不确定,但据我了解,为了实现我应该使用带有 ConcurrencyMode.Single 的单例服务,对吗?欢迎任何有关如何实现该目标的全面阅读。

我也知道可能有更好、更优雅的并发处理方式,但我的时间非常短,而且如果我理解正确的话,这种方法似乎是最简单和最快的实现方式。

4

1 回答 1

3

您可以在这里做的最糟糕的事情是单例服务。

数据库引擎(嗯,大多数)非常适合并发调用。你想限制他们的并发功能做什么?

对您来说最好的方法是每次调用的无状态 WCF 服务。
为了数据一致性,请使用乐观并发。为了简化这一点,您可以使用任何 ORM,例如Entity Framework

于 2012-05-31T19:21:44.993 回答