Synchronization 消息队列是地理分布部署的正确工具吗?

Synchronization 消息队列是地理分布部署的正确工具吗?,synchronization,message-queue,amqp,Synchronization,Message Queue,Amqp,我们的场景如下(我想这不是唯一的):我们在两个不同的托管设施中有数据库支持的web应用程序。一个设施有主数据库,另一个有从数据库 我们希望即使主数据库处于脱机状态,从设备也能继续工作(如有必要,在有限模式下)。当主数据库进行备份时,数据应该得到同步 我想我可以使用消息队列发送数据更新指令。如果从服务器和主服务器之间存在断开连接,则从服务器中的消息队列将保留其消息。当连接恢复时,消息将流动,主服务器将更新数据库 我错过什么了吗?这不是消息队列的好用途吗?IBM DB2有一个名为“Q复制”的工具,用

我们的场景如下(我想这不是唯一的):我们在两个不同的托管设施中有数据库支持的web应用程序。一个设施有主数据库,另一个有从数据库

我们希望即使主数据库处于脱机状态,从设备也能继续工作(如有必要,在有限模式下)。当主数据库进行备份时,数据应该得到同步

我想我可以使用消息队列发送数据更新指令。如果从服务器和主服务器之间存在断开连接,则从服务器中的消息队列将保留其消息。当连接恢复时,消息将流动,主服务器将更新数据库


我错过什么了吗?这不是消息队列的好用途吗?

IBM DB2有一个名为“Q复制”的工具,用于将提交的事务数据从DB2(R)UDB源复制到目标。Q复制使用
webspheremq
队列和两个程序
qcapture
qapply
来复制数据。
qcapture
程序在源代码上运行,捕获数据并发送到webspheremq队列。QApply程序在目标上运行,从WebSphereMQ队列接收消息,并将数据应用到目标数据库


您可以找到有关Q复制的更多信息

IBM DB2有一个名为“Q复制”的工具用于将提交的事务数据从DB2(R)UDB源复制到目标。Q复制使用
webspheremq
队列和两个程序
qcapture
qapply
来复制数据。
qcapture
程序在源代码上运行,捕获数据并发送到webspheremq队列。QApply程序在目标上运行,从WebSphereMQ队列接收消息,并将数据应用到目标数据库


您可以找到有关Q复制的更多信息

是的,但是它不像在数据中心使用消息队列那样简单。您可能需要在两个持久消息集群之间建立一个具有桥接功能的体系结构。一种方法是在每个物理位置设置一个RabbitMQ代理(或代理集群),然后使用另一个协议桥接这些位置,如使用此ZeroMQ插件完成的协议

最终结果是消息代理的联合。根据数据量和位置之间的距离,您可能希望使用用于桥接的压缩VPN链路或集群之间的某种批处理和压缩将压缩构建到体系结构中

但这不是唯一的办法。另一种方法是拥有一个中央RabbitMQ集群,并通过Internet使用到该集群的SSL客户端连接。如果位置相对靠近,这将是一个更好的解决方案。例如,如果所有地点都在美国东北部,我会这样做。但如果地点在美国、欧洲和亚洲,那么最好使用联邦解决方案在经纪人集群之间架起数据桥梁

在一个非常大的组织中,比如说在三大洲的100个地点,你可能会想将这两种解决方案结合起来


<>但是如果这两个位置和一个主数据库和一个复制品一样简单,我认为你最好遵守标准的DB复制解决方案,并且考虑如果数据量很大的话,用它们之间的压缩链接来补充。据我所知,复制解决方案已经在处理保存更新,以便在主服务器和从服务器之间的链接断开时发送。在这种情况下,最好忘记AMQP。

是的,但是它不像在数据中心使用消息队列那样简单。您可能需要在两个持久消息集群之间建立一个具有桥接功能的体系结构。一种方法是在每个物理位置设置一个RabbitMQ代理(或代理集群),然后使用另一个协议桥接这些位置,如使用此ZeroMQ插件完成的协议

最终结果是消息代理的联合。根据数据量和位置之间的距离,您可能希望使用用于桥接的压缩VPN链路或集群之间的某种批处理和压缩将压缩构建到体系结构中

但这不是唯一的办法。另一种方法是拥有一个中央RabbitMQ集群,并通过Internet使用到该集群的SSL客户端连接。如果位置相对靠近,这将是一个更好的解决方案。例如,如果所有地点都在美国东北部,我会这样做。但如果地点在美国、欧洲和亚洲,那么最好使用联邦解决方案在经纪人集群之间架起数据桥梁

在一个非常大的组织中,比如说在三大洲的100个地点,你可能会想将这两种解决方案结合起来

<>但是如果这两个位置和一个主数据库和一个复制品一样简单,我认为你最好遵守标准的DB复制解决方案,并且考虑如果数据量很大的话,用它们之间的压缩链接来补充。据我所知,复制解决方案已经在处理保存更新,以便在主服务器和从服务器之间的链接断开时发送。在这种情况下,最好忘记AMQP