我正在寻找一种解决方案,用于几个内部部署数据库之间的实时数据集成。所涉及的数据没有太多变化。 我正在评估各种可用的ESB。我认为使用Azure Service Bus进行数据集成可以快速开发解决方案。是否建议使用Azure服务总线来集成所有内部部署数据库?
答案 0 :(得分:5)
除非集成非常复杂,否则BizTalk可能不适合这里的工作。另一方面,将数据发送到云只是为了将其转换回另一个数据库(在同一个局域网上?)也不是正确的方法 - 这会引入延迟和流量成本。
(近)数据库的实时集成听起来像是一项工作:
如果您真的想构建服务总线,可以像Sam建议的那样构建基于AMQP的本地总线(例如Windows Service Bus或Rabbit),或购买现有产品(NServiceBus等)。
答案 1 :(得分:4)
如果您拥有所有应用程序' on',则通过将集成层移动到云来引入额外风险(突然您的Internet连接可能会导致集成层崩溃) 但好消息是您可以使用本地运行的Service Server for Windows Server(即使使用Windows Azure包!) 相同的编程模型,类似的消息传递功能,因此可能是一个不错的选择。
与BizTalk相比...服务总线重量轻,仅限消息传递。 BizTalk提供了更丰富的功能(转换,管道,BAM,业务规则,适配器)。
祝你好运答案 2 :(得分:0)
如果您只想在几个本地数据库之间进行集成,那么您可以考虑使用Sql Server的Service Broker(http://msdn.microsoft.com/en-gb/library/bb522893.aspx)。
它提供了一种可靠的异步方式,可以实时地在数据库之间传递数据。它可以管理消息顺序,并且可以在同一队列上同时运行多个会话,每个会话由其自己的接收器实例处理。
这里有一个很好的概述...... http://technet.microsoft.com/en-us/library/ms166104(v=sql.105).aspx