学习rocketmq(1)安装启动入门,是rocketmq可以外网访问
来源:互联网 发布:电脑微信群发软件 编辑:程序博客网 时间:2024/03/28 18:07
参考官网
http://rocketmq.apache.org/docs/quick-start/
1. 安装
> git clone -b develop https://github.com/apache/rocketmq.git > cd rocketmq > mvn -Prelease-all -DskipTests clean install -U > cd distribution/target/apache-rocketmq >
2. 启动nameserver
> nohup sh bin/mqnamesrv & > tail -f ~/logs/rocketmqlogs/namesrv.log The Name Server boot success...
启动不了
修改runserver.sh和runbroker.sh
JAVA_OPT="${JAVA_OPT} -server -Xms4g -Xmx4g -Xmn2g -XX:PermSize=128m -XX:MaxPermSize=320m"
3. 启动broker
> nohup sh bin/mqbroker -n localhost:9876 & > tail -f ~/logs/rocketmqlogs/broker.log The broker[%s, 172.30.30.233:10911] boot success...
查看
[root@iZ2zei0nwllapkwklisoncZ apache-rocketmq]# jps3811 Jps25557 Kafka3722 NamesrvStartup3758 BrokerStartup
3. 关闭
> sh bin/mqshutdown brokerThe mqbroker(36695) is running...Send shutdown request to mqbroker(36695) OK> sh bin/mqshutdown namesrvThe mqnamesrv(36664) is running...Send shutdown request to mqnamesrv(36664) OK
4.发消息
> export NAMESRV_ADDR=localhost:9876 > sh bin/tools.sh org.apache.rocketmq.example.quickstart.Producer SendResult [sendStatus=SEND_OK, msgId= ... > sh bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer ConsumeMessageThread_%d Receive New Messages: [MessageExt...
5. 使rocketmq可以外网访问
sh bin/mqshutdown brokersh bin/mqbroker -m >broker.pvim broker.p 修改里面的IP地址如下namesrvAddr=123.56.13.70:9876brokerIP1=123.56.13.70brokerName=localhostbrokerClusterName=DefaultCluster
重启broker
nohup sh bin/mqbroker -c broker.p &
这样就可以在本地写测试程序连接云上的rocketmq了
6. 示例代码
生产者
public class Producer { public static void main(String[] args) throws MQClientException, InterruptedException { DefaultMQProducer producer = new DefaultMQProducer("please_rename_unique_group_name"); producer.setNamesrvAddr("123.56.13.70:9876"); producer.start(); for (int i = 1000; i < 2000; i++) { try { Message msg = new Message("TopicTest" /* Topic */, "TagA" /* Tag */, ("Hello RocketMQ " + i).getBytes(RemotingHelper.DEFAULT_CHARSET) /* Message body */ ); SendResult sendResult = producer.send(msg); System.out.printf("%s%n", sendResult); } catch (Exception e) { e.printStackTrace(); Thread.sleep(1000); } } producer.shutdown(); }}
消费者
public class Consumer { public static void main(String[] args) throws InterruptedException, MQClientException { DefaultMQPushConsumer consumer = new DefaultMQPushConsumer("please_rename_unique_group_name"); consumer.setNamesrvAddr("123.56.13.70:9876"); consumer.setConsumeFromWhere(ConsumeFromWhere.CONSUME_FROM_FIRST_OFFSET); consumer.subscribe("TopicTest", "*"); consumer.registerMessageListener(new MessageListenerConcurrently() { @Override public ConsumeConcurrentlyStatus consumeMessage(List<MessageExt> msgs, ConsumeConcurrentlyContext context) { System.out.printf(Thread.currentThread().getName() + " Receive New Messages: " + msgs + "%n"); return ConsumeConcurrentlyStatus.CONSUME_SUCCESS; } }); consumer.start(); System.out.printf("Consumer Started.%n"); }}
bingo!
阅读全文
0 0
- 学习rocketmq(1)安装启动入门,是rocketmq可以外网访问
- rocketmq入门学习笔记
- RocketMQ入门(1)
- 学习Rocketmq-producer启动(一)
- rocketmq 启动
- RocketMQ入门
- RocketMQ入门
- RocketMQ入门
- RocketMQ 入门
- RocketMQ 入门
- RocketMQ安装
- RocketMQ安装
- RocketMQ学习
- RocketMq学习
- RocketMQ学习
- 学习rocketMQ
- RocketMQ
- Rocketmq
- java小程序——豆机
- 【稳定方案】PS-6M40-C LVDS转VBO 4K板卡
- 用类描述电脑CPU的速度和硬盘的容量
- [Codevs P1391]伊吹萃香
- Leetcode #2
- 学习rocketmq(1)安装启动入门,是rocketmq可以外网访问
- python lambda
- C语言——简单的相关测试题
- nginx+php上传大文件
- TCP/IP协议-为什么说TCP是可靠连接
- 计算机发展
- .html文件是白色的,而不是浏览器的图标
- 基于CentOS搭建个人网盘
- random