【问题标题】:Active-Active high availability design for Windows messaging service?Windows消息服务的主动-主动高可用性设计?
【发布时间】:2012-10-10 19:54:28
【问题描述】:

我正在尝试找出设计使用复制数据库的主动-主动集群的最佳方法。对于网络负载平衡和故障转移,我可以使用 Windows NLB。对于数据库,我可以使用 MySQL,它可以开箱即用地进行主主复制。这是最简单的部分。

现在我的问题是如何对连接到复制数据库的消息传递服务进行编程。设计它以使两个服务都使用相同的表而不会发生冲突的最佳方法是什么?失败时,来自失败节点的未完成事务必须由其他节点承担。

这是消息服务的工作原理。 Web 客户端将调用具有收件人和消息的 Web 服务。 Web 服务会将消息插入到数据库队列中。当满足特定条件时,将发送消息。这可能会在几秒钟内或几天后发生。

我在 Internet 上进行了大量搜索,但无济于事。有没有人做过类似的事情?谢谢。

【问题讨论】:

  • 你知道像 RabbitMQ 这样的高可用性消息服务吗?我不确定这是否符合您的需求,但除非您将问题更具体,否则很难给出更具体的答案。

标签: high-availability failover nlb failovercluster


【解决方案1】:

如果 mysql 不是必需的,我建议使用 nosql 内存优化数据库,如 http://ravendb.net/,它比 mysql 更适合高可用性。只是一个想法。

聊天应用程序通常不需要事务/高度可靠性。

TSQL 更适合以数据可靠性为重点的金融应用程序,对于聊天,您可能最好使用以速度为重点的数据库。

只是我的 2 美分,因为这看起来更像是征求意见。

编辑

看起来 raven 支持 ACID 事务,所以更好。

【讨论】:

    猜你喜欢
    • 2011-02-09
    • 1970-01-01
    • 2011-02-05
    • 1970-01-01
    • 2017-01-30
    • 2019-04-08
    • 1970-01-01
    • 2016-01-13
    • 1970-01-01
    相关资源
    最近更新 更多