3

我创建了一个 WCF Web 服务,它将数据从 SQL Server 上传到我们的 ISeries。当最终用户完成数据输入(一个批次)后,他们会将批次号“发送”到 Web 服务。然后,Web 服务将该数据上传到 ISeries。不能假设这将是一个快速的过程,并且可能有许多最终用户同时访问 Web 服务。同样,由于数据库在 ISeries 上的设置方式,我无法同时上传这些数据,因为我们可能会遇到锁、触发失败的触发器等。所以,我想以某种方式对这些调用进行排队,以便它们按接收顺序完成.

我一直在寻找执行此操作的方法,并且在 2011 年和更早的讨论 MSMQ 中有很多信息。这仍然是首选的方法吗?可重入并发模式会是更“现代”的选择吗?

4

1 回答 1

1

有很多替代排队系统。由于您有一个 SQL Server,我建议您使用 MSMQ。在这种组合中,您可以使用开箱即用的 TransactionScope 来处理跨数据库和队列系统的事务。

根据我自己的经验,MSMQ 是一个经过验证且稳定的技术堆栈。

于 2012-09-21T08:21:28.523 回答