代码之家  ›  专栏  ›  技术社区  ›  Tensho

如何在RabbitMQ中发布数据库之间的数据更改?

  •  0
  • Tensho  · 技术社区  · 7 年前

    假设我们有两个应用程序 A B 拥有自己不同的数据库 A1 (MySQL)和 B1 (博士后)相应。我们创建实体 X Y . 属于 十、 . 每次插入数据库时 B 了解全新的实体。每个实体一个事件 X1 Y1 . 如果RabbitMQ保持消息的顺序,那么应用程序中的工作人员 B may进程 第一个和 Y1 A. 数据库中的记录

    所以我的问题是关于正确的方向和一般方法:

    1. 我应该选择另一个保证消息顺序的消息队列吗?
    2. 我是否遗漏了RabbitMQ消息订单细节中的某些特定内容?
    3. B 另一方面,若消息顺序不符合预期,那个么会将消息重新排队返回RabbitMQ吗?

    地下一层 是一个数据仓库,它不仅从 ,还有其他数据库。

    1 回复  |  直到 7 年前
        1
  •  0
  •   mbnx    7 年前

    如果RabbitMQ保持消息的顺序,那么一切都很好

    X和Y实例不能分配一个序列号,然后用它在B中重建正确的序列吗?

    在新的A和B记录之间建立正确的关联

    X1,Y1不能表达一个显式关系,允许在不依赖序列的情况下创建a,B吗?

    消息订购总是很昂贵。您要么有硬约束(例如一个消费者),要么可用性和速度较低。你最好的选择是找到一种不依赖订单的方式。