【发布时间】:2012-03-16 22:28:07
【问题描述】:
我有一个包含 Order 表的数据库。我正在尝试为我们的客户创建一个 API,以便他们可以操作 Order 表中的数据。我选择走 WCF 数据服务的路线,以便客户端可以通过 URI 执行 CRUD 操作。
但是,我需要确保此 WCF 数据服务是可扩展的,并且可以处理来自多个客户端的大量请求(1000 个)。我已经研究过将 MSMQ 与 WCF 数据服务一起使用,但查看以下链接似乎是不可能的 - Can we use msmq messaging with wcf data service.
我的解决方法是当客户端尝试操作数据(而不是选择)时,我们将请求添加到 MSMQ,而不是等待将更改保存到数据库。这是通过覆盖 ORM 中的 SaveChanges() 方法并提取更改,将它们序列化到 MSMQ 中然后返回到客户端来完成的。然后,一个单独的线程将从 MSMQ 中提取对象,然后将更改保存到 db。
这一切看起来都很好,但是我如何通知客户其请求已被处理或出错。有什么想法吗?
【问题讨论】: