我有一个简单的现有 ASP.NET MVC Web 解决方案。基于服务器的东西将信息写入数据库。我现在要将此系统与许多其他第 3 方系统集成/同步。我想将集成处理与现有的核心处理分开,尽可能保持现有系统不变。
我的计划如下:
- 每当核心系统服务器上发生数据库写入时,我都会将消息写入 MSMQ 队列。
- 一个完全独立的基于服务器的 Windows 服务将轮询 MSMQ,查看消息并将消息写入一个或多个“出站”同步 MSMQ 队列。
- 其他 Windows 服务将监视“出站”同步队列,并在必要时与第 3 方系统对话,管理出站同步。
我有几个问题:我应该有一个单一的 Windows 服务来完成这一切,还是应该有几个服务,一个中央“路由”一个,一个用于每个第 3 方系统?我应该为此使用 WCF。考虑到写入初始队列的“触发器”已经在基于服务器的进程上“发生”,这对我有什么好处吗?
非常感谢。