zbus基础示例不能运行成功

mmtzwyd 发布于 2015/09/07 09:27
阅读 933
收藏 0

运行文档给出的最基本的示例

// 1)创建Broker代理【重量级对象,需要释放】
BrokerConfig config = new BrokerConfig();
config.setServerAddress("127.0.0.1:15555");
final Broker broker = new SingleBroker(config);


// 2) 创建生产者 【轻量级对象,不需要释放,随便使用】
Producer producer = new Producer(broker, "MyMQ");
producer.createMQ(); // 如果已经确定存在,不需要创建


for (int i = 0; i < 10; i++) {
Message msg = new Message();
msg.setBody("hello world");
Message res = producer.sendSync(msg, 1000);
System.out.println(res);
}


// 3)销毁Broker
broker.close();


运行过程中出现以下异常

分析可能是网络连接不正确,已经排除防火墙原因

SEVERE: Connection refused: no further information

java.net.ConnectException: Connection refused: no further information
at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:692)
at org.zbus.net.core.SelectorThread.handleConnectEvent(SelectorThread.java:246)
at org.zbus.net.core.SelectorThread.run(SelectorThread.java:121)


Exception in thread "main" java.io.IOException: Session not registered yet:Session [remote=null, status=CLOSED, id=a4475979-872f-49be-8625-5701ce18cb44]
at org.zbus.net.core.Session.write(Session.java:126)
at org.zbus.net.core.Session.write(Session.java:121)
at org.zbus.net.InvokingClient.invokeSync(InvokingClient.java:98)
at org.zbus.broker.SingleBroker.invokeSync(SingleBroker.java:95)
at org.zbus.broker.SingleBroker.invokeSync(SingleBroker.java:35)
at org.zbus.mq.MqAdmin.invokeCreateMQ(MqAdmin.java:67)
at org.zbus.mq.MqAdmin.createMQ(MqAdmin.java:76)
at ProducerMain.main(ProducerMain.java:17)

加载中
0
少帮主
少帮主

zbus启动没? telnet 127.0.0.1 15555 就知道了

如果还不行,请加入zbus群 ,贴图给你诊断fix

467741880

0
m
mmtzwyd

原因找到了,是因为没有开启zbus服务所致。

生产者和消费者线程都是要访问zbus服务,而zbus服务没有做嵌入式处理的话,需要单独开启服务,即运行zbus.bat开启服务才可以被访问。

谢谢@少帮主的热心回答。

OSCHINA
登录后可查看更多优质内容
返回顶部
顶部
返回顶部
顶部