ZBUS入门文档

https://git.oschina.net/rushmore/zbus

ZBUS解决啥问题

消息队列MQ

消息队列重点解决系统解耦,可以让系统责任链设计更加清晰。

ZBUS消息队列解决消息队列可靠传输、支持发布订阅广播模式。

同类产品: RabbitMQActiveMQ

 

远程方法调用RPC

跨语言解决远程方法调用,JAVA平台支持透明式动态接口远程代理。

同类产品: dubbothrift等等

 

网络代理(TCPHTTPDMZ结构)

ZBUS提供TCP透明代理,可以快速完成对目标服务器的代理部署,代码规模20K左右。同时提供简单的类似Nginx 7HTTP代理。在对网络安全结构有要求的场景下,可以使用ZBUS提供的DMZ安全代理

 

HA高可用方案

ZBUS提供HA相对通用性解决方案,结构采用Tracker + MainServer服务器

 

第三方系统服务代理

通过zbus的跨语言平台(协议开放),完成第三方系统的代理接入,比如zbus支持对接金证交易系统、微软MSMQ服务等等

 

ZBUS最小示例

ZBUS属于分布式结构,不嵌入式的时候,需要启动zbus(中介商服务器)来完成示例,但是应用本身不存在启动顺序 --生产者、ZBUS消息服务、消费者无启动顺序要求,可以先启动消费者后启动zbus(消费者提示连接错误不断重试)。

 

1. 启动zbus服务,在zbus-dist目录下启动zbus 

ZBUS要求JDK6+,如果不想使用使用默认JDK,可以改动启动脚本中的JAVA_HOME

比如Windows下的zbus.bat

ZBUS入门文档_第1张图片


      如果想看到所有消息把-verbose true 打开,消息持久化目录可以根据-store指定,侦听指定外网IP改动-h,改变端口指定-p

 

2. test目录下启动ConsumerExample消费者示例

3. test目录下启动ProducerSync同步生产示例

 ZBUS入门文档_第2张图片

 

 

 

发生连接错误,请先确定zbus是否启动(telnet),BrokerConfigserverAddress是否填写正确。

 

ZBUS特点概览

  • 超轻量级,单个Jar包无依赖 ~250K 

  • 支持消息队列发布订阅, RPC, 代理(TCP/HTTP/DMZ

  • 亿级消息堆积能力、支持HA高可用

  • 丰富的API--JAVA/C/C++/C#/Python/Node.JS多语言接入


你可能感兴趣的:(zbus)