1

我是 CQRS 的新手,但我了解它背后的意图。从我浏览的少数文档中,我不明白如何在共享的 asp.net 托管环境(由 GoDaddy 或 DiscountAsp.net 提供的托管)中部署 CQRS 应用程序/服务。托管服务器是否需要 MSMQ 或类似的消息处理应用程序才能使 CQRS 工作?或者它可以通过 MVC4、WCF 服务或 Asp.net 应用程序中可用的异步通信来工作。

感谢反馈以及任何讨论共享环境中 CQRS 部署方面的链接。

4

1 回答 1

1

托管服务器是否需要 MSMQ 或类似的消息处理应用程序才能使 CQRS 工作?

通常是的,但这当然取决于您对 CQRS 的定义。例如,有些人会考虑仅使用不同的读写模型作为 CQRS 的单一数据存储架构。在这种情况下,不需要显式同步读取和写入存储。然而,在通常的意义上,读写之间需要同步,并且通常使用以 MSMQ 为实例的消息传递系统来实现。

托管服务器是否需要 MSMQ 或类似的消息处理应用程序才能使 CQRS 工作?

ASP.NET MVC 中的异步用于异步处理单个请求,而不是用于执行后台任务或在进程和/或节点之间传递消息,例如写入和读取存储。

一些建议:

  • 考虑在 Azure、AWS、AppHarbor、iron.io 等提供商上托管 CQRS 所需的基础设施。
  • 考虑使用 RavenHQ 之类的东西作为数据存储,因为 RavenDB 可以有效地支持开箱即用的 CQRS。在这种情况和前一种情况下,如果绝对必要,您仍然可以使用 GoDaddy 等来托管面向前端的 ASP.NET 应用程序。
于 2012-12-31T23:39:20.540 回答