分布式消息服务ROCKETMQ版-通过Topic和Tag实现消息分类:实施方法

时间:2024-10-15 17:23:21

实施方法

以物流运输场景为例,普通货物订单消息和生鲜货物订单消息属于不同类型的消息,分别创建Topic_Common和Topic_Fresh。在不同消息类型中,以不同的Tag划分不同的订单目的省份。

  • Topic:Topic_Common
    • Tag = Province_A
    • Tag = Province_B
  • Topic: Topic_Fresh
    • Tag = Province_A
    • Tag = Province_B

以生产发往Province A的普通货物订单消息为例,代码示例如下:

Message msg = new Message("Topic_Common", "Province_A" /* Tag */, ("Order_id " + i).getBytes(RemotingHelper.DEFAULT_CHARSET));

以订阅发往Province A和Province B的生鲜货物订单消息为例,代码示例如下:

consumer.subscribe("Topic_Fresh", "Province_A || Province_B");
support.huaweicloud.com/bestpractice-hrm/hrm-bp-003.html