本文介绍将RabbitMQ集群迁移到消息队列RabbitMQ版实例的优势、原理和流程。

迁移优势

将RabbitMQ集群迁移到消息队列RabbitMQ版实例的优势,请参见产品优势

迁移原理

对于消息队列来说,如果要实现集群迁移,只需消费完旧集群的消息即可。由于Producer和Consumer都是集群化的,您可以通过一台一台操作的方式实现上层业务无感知。

迁移流程(双读模式)

通过双读模式将RabbitMQ集群迁移到消息队列RabbitMQ版实例的流程如下:

  1. 创建消息队列RabbitMQ版实例。
    更多信息,请参见创建实例pg_migrate_metadata
  2. 迁移RabbitMQ集群的元数据到消息队列RabbitMQ版实例。
    更多信息,请参见迁移元数据上云pg_create_consumer
  3. 消息队列RabbitMQ版实例开启新的Consumer,准备消费消息队列RabbitMQ版实例的消息。
    create_producer
  4. 消息队列RabbitMQ版实例开启新的Producer,下线旧的Producer,并使旧的Consumer继续消费RabbitMQ集群的消息。
    pg_create_producer
  5. 待RabbitMQ集群的消息全部被旧的Consumer消费后,下线旧的Consumer和RabbitMQ集群。
    pg_6