单向发送消息:
这种方式主要用在不特别关心发送结果的场景,例如日志发送。(耗时非常短,一般在微秒级别)
消息接收方式:RocketMQ(三)——————javaAPI(1.2.3.4 消息接收方式)
//官网示例 public static void main(String[] args) throws Exception{ // 实例化消息生产者Producer DefaultMQProducer producer = new DefaultMQProducer("producerGroup_name"); // 设置NameServer的地址 producer.setNamesrvAddr("localhost:9876"); // 启动Producer实例 producer.start(); for (int i = 0; i < 100; i++) { // 创建消息,并指定Topic,Tag和消息体 Message msg = new Message("TopicTest", "TagA", ("Hello RocketMQ " + i).getBytes(RemotingHelper.DEFAULT_CHARSET)); // 发送单向消息,没有任何返回结果 producer.sendOneway(msg); } // 如果不再发送消息,关闭Producer实例。 producer.shutdown(); } //简单理解 public static void main(String[] args) throws Exception { DefaultMQProducer producer = new DefaultMQProducer("rocketMq1"); //设置nameserver地址: producer.setNamesrvAddr("127.0.0.1:9876"); producer.start(); Message message1 = new Message("myTopic001","rocketMq1 第一次发送 sendOneway".getBytes()); //"TAG-B" -- 标签, "KEY-B" ---keys //Message message1 = new Message("myTopic001","TAG-B","KEY-B","rocketMq1 第一次发送 TAG-B".getBytes()); // 单向消息 //只发送消息,不等待服务器响应,只发送请求不等待应答。此方式发送消息的过程耗时非常短,一般在微秒级别。 producer.sendOneway(message1); // producer.shutdown(); System.out.println("生产者下线!"); }