我目前正在开展一个项目,该项目涉及与另一个技术合作伙伴一起构建系统。系统将提供“监控”类型的功能,操作将长期运行,并返回和处理/返回给用户的大量“事件”。
我最初的反应是构建一个 Web 服务来完成所有这些处理,将结果放入数据库并允许其他技术合作伙伴查询它(通过某种 .NET WCF 服务接口)。这是我在过去构建许多诸如此类的解决方案时最有经验的地方。这似乎有点笨拙,因为通信实际上是通过在数据库中粘贴一些东西并让其他进程访问它们。
然而,我最近阅读了很多关于企业集成模式和消息传递解决方案的内容,我当然可以看到这个解决方案的一些好处。这将允许将事件放置在队列或总线上,然后进行相应的处理。它似乎比更多 RPC 类型的 Web 服务接口提供了更多的灵活性。
有没有人有任何想法/经验做出这种选择?在单一解决方案中使用混合方法是否合理?