代码拉取完成,页面将自动刷新
<dependencies>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.56</version>
</dependency>
<dependency>
<groupId>org.java-websocket</groupId>
<artifactId>Java-WebSocket</artifactId>
<version>1.3.8</version>
</dependency>
</dependencies>
演示Demo
/**
* 演示Demo
*/
public class DemoApplication {
public static void main(String[] args) throws URISyntaxException {
/* Topic:主题,ConsumerId:消费者客户端id,ProducerId:生产者客户端id */
/* 消费者websocket链接 ws://127.0.0.1:8011/Consumers/Conn/{Topic}/{ConsumerId} */
/* 生产者websocket链接 ws://127.0.0.1:8011/Producers/Conn/{Topic}/{ProducerId} */
//创建消费者客户端连接,并持续监听
ConsumerConn consumerConn = new ConsumerConn("ws://127.0.0.1:8011/Consumers/Conn/java_topic/java1",""){
/**
* 持续监听消息队列发送过来的消息
* @param msg 接收到的消息
*/
@Override
public void onMessage(String msg) {
super.onMessage(msg);
//如果是json字符串格式的消息
if(msg.charAt(0) == '{'){
//解析msg字符串,将其转为Message类
Message message = JsonReadUtil.getMessage(msg);
System.out.println("MessageData: "+message.getMessageData());
// TODO 获取到message消息后,可在此进行业务操作
}
}
};
//创建生产者客户端连接
ProducerConn producerConn = new ProducerConn("ws://127.0.0.1:8011/Producers/Conn/java_topic/java2","");
//等待生产者客户端连接成功
while(!producerConn.getReadyState().equals(READYSTATE.OPEN)){
System.out.print(".");
}
System.out.println("\nproducer connect success");
//等待消费者客户端连接成功
while(!consumerConn.getReadyState().equals(READYSTATE.OPEN)){
System.out.print(".");
}
System.out.println("\nconsumer connect success");
//生产者循环发送消息
for(int i=0;i<10;i++){
//消息发送
producerConn.ProducerSend("hi-"+i,0);
}
//通过向注册中心发送HTTP请求,获取集群内的消息队列节点列表
List<Node> nodes = Cluster.GetNodes("http://127.0.0.1:8031/Registry/GetNodes","");
System.out.println(nodes);
}
}
获取集群节点列表
消费者客户端连接
生产者客户端连接
消费者接收的消息模板
消息队列节点模板
生产者发送的消息模板
http请求工具
json字符串解析工具
演示Demo
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。