通过Tag对消息分类RocketMQ建议一个业务系统只使用一个Topic,不同类型的消息通过tag来区分。tag可以在构造Message的时候指定,下面代码就指定了发送的消息的tag都为tag0。 @Test
public void sendWithTag() throws Exception {
DefaultMQProducer producer = new DefaultMQProducer("group1");
producer.setNamesrvAddr(nameServer);
producer.start();
for (int i = 0; i < 10; i++) {
Message message = new Message("topic1", "tag0", ("hello with tag---" + i).getBytes());
SendResult sendResult = producer.send(message);
if (sendResult.getSendStatus() == SendStatus.SEND_OK) {
System.out.println("消息发送成功:" + sendResult);
} else {
System.out.println("消息发送失败:" + sendResult);
}
}
producer.shutdown();
}
也可以通过Message的setTags() 进行指定。 @Test
public void sendWithTag() throws Exception {
DefaultMQProducer producer = new DefaultMQProducer("group1");
producer.setNamesrvAddr(nameServer);
producer.start();
for (int i = 0; i < 10; i++) {
Message message = new Message("topic1", ("hello with tag---" + i).getBytes());
message.setTags("tag0")
|