MQ、RPC、服务总线 zbus

MQ、RPC、服务总线 zbus

MIT
跨平台
2014-01-22
少帮主

小巧而极速的MQ, RPC实现, 支持HTTP/TCP代理,开放易扩展,多语言支撑微服务,系统总线架构

zbus核心是一个独立实现的小巧极速的消息队列(MQ),支持持久化与内存队列, 支持单播、广播、组播等多种消息通信模式;在MQ之上 zbus完备地支持了RPC服务,RPC支持独立伺服,基于总线两种模式;同时zbus支持代理服务,基于MQ的HttpProxy实现了类Nginx的HTTP代理服务(支持DMZ网络结构),TcpProxy则支持透明的TCP协议代理,可以代理任何基于TCP的协议,比如代理MySQL数据库。

zbus内建分布式高可用(HA),解决单点问题;Java/.NET/JS/C++/PHP等主流语言接入能力为zbus充当SOA服务总线提供跨平台支持;

在设计上,zbus拥抱KISS准则,所有特性浓缩在一个小小的400K左右的jar包中(非常少的依赖);轻量,MQ核心,方便二次开发,zbus为微服务架构、系统整合、弹性计算、消息推送等场景提供开箱即用的功能支持。

ZBUS主要特性:

  • 高速磁盘/内存MQ,支持单播,广播,组播,订阅多种消息模式
  • RPC开箱即用,支持同步异步,动态类代理
  • 多语言客户端,Java/.NET/JavaScript/PHP/Python/C++/Go(服务器)
  • 轻量级,发行大小 ~3M, 核心 ~400K, 极少依赖
  • 高可用无应用故障单点,分布式高可用的内置支持
  • 简洁的协议设计,类HTTP头部扩展协议,长短连接,WebSocket支持
  • 内置监控,不断丰富的监控指标

ZBUS以轻量弹性著称,目前已知的应用主要分布在证券金融行业,在各大券商内部使用,因为开源同时也有不少二次开发定制的项目存在。

ZBUS可以有多种工作角色

  1. MQ服务器
  2. RPC服务器
  3. Proxy HTTP/TCP代理
  4. 服务标准化总线服务器

当你遇到这些相关问题的时候,不妨尝试下zbus,也许你会喜欢呢。

加载中

评论(59)

yuger_2018
yuger_2018
下载源码启动示例中的ConsumerExample 出现这个问题 怎么解决? Exception in thread "main" io.zbus.mq.MqException: Missing MqClient for publishing message: GET / HTTP/1.1
我是杨
为啥出现 @zbus 警告: !!!!!!!!!!!!!!!!!!!!!!!!!!Drop,HTTP/1.1 400 Bad Request connection: Keep-Alive content-length: 30 id: 11365569-e22b-45d6-8d04-7360cf7795dd 400: Bad Format, Missing topic
蓝水晶飞机
蓝水晶飞机
#zbus# 在7.x版本上发现存在 RPC 远程代码执行的漏洞(如果你已替换了RpcCodec为其他的,并且支持 URLClassLoad 反序列化的话那就100%执行任意代码),各位感兴趣的自己去研究为何。
JavaGG
JavaGG
请问zbus的clinet和服务器的jar包是同一个吗?那么client是否依赖netty?
Mr-CoolB
Mr-CoolB
#zbus# @少帮主 准备重7.2 升级0.9.4 发现ttl属性不见了,这个是取消了还是有其他代替?
Mr-CoolB
Mr-CoolB
#zbus# @少帮主 为什么不往maven中央库推送新版本了?
Mr-CoolB
Mr-CoolB
#zbus# 为什么不往maven中央库推送新版本了?
攀登雪山太累
攀登雪山太累
如何设置消息模式,发一条消息只有一个消费者收到。我想设置成发布订阅模式
蓝水晶飞机
蓝水晶飞机
#zbus# 学习、选型
谁家今夜扁舟子
谁家今夜扁舟子
共勉:http://www.codeyyy.com/linux/149-191-157.html

zbus 0.11.4 发布,MQ、RPC、微服务总线

zbus 0.11.4 已发布。zbus 是小巧而极速的 MQ, RPC 实现, 支持 HTTP/TCP 代理,开放易扩展,多语言支撑微服务,系统总线架构。 0.11.1-0.11.4 更新列表 TcpProxy支持多目标配置 QueueNak修改...

2017/12/07 17:05

zbus 0.11.0 发布,MQ、RPC、微服务总线

zbus 0.11.0 已发布。zbus 是小巧而极速的 MQ, RPC 实现, 支持 HTTP/TCP 代理,开放易扩展,多语言支撑微服务,系统总线架构。 0.11.0 更新列表 大更新 - MQ消费者端增加ACK确认,以及可配置的...

2017/11/16 11:40

zbus 0.10.1 发布,MQ、RPC、微服务总线

zbus 0.10.1已发布。zbus是小巧而极速的MQ, RPC实现, 支持HTTP/TCP代理,开放易扩展,多语言支撑微服务,系统总线架构。 0.10.1 更新列表: - 增加zbus.js支持HTTP直接RPC调用 - FileKit增加...

2017/11/06 15:05

zbus 0.10.0 发布,MQ、RPC、微服务总线

小巧而极速的MQ, RPC实现, 支持HTTP/TCP代理,开放易扩展,多语言支撑微服务,系统总线架构。 0.10.0 更新列表: - RPC增加原生HTTP消息返回,方便直接提供浏览器友好的HTTP服务 - RPC参数列...

2017/11/02 13:50

zbus 0.9.4 发布,MQ、RPC、微服务总线

小巧而极速的MQ, RPC实现, 支持HTTP/TCP代理,开放易扩展,多语言支撑微服务,系统总线架构。 小版本更新列表: - Message增加origin-method,修复HTTP代理Method丢失 - 修复 recvFilter 不生...

2017/10/18 16:02

zbus 0.9.3 发布 MQ、RPC、微服务总线

小巧而极速的MQ, RPC实现, 支持HTTP/TCP代理,开放易扩展,多语言支撑微服务,系统总线架构 小版本更新列表: HTTP MessageCodec去除了默认的Content-Type设置 RpcCodec正确返回JSON+Charse...

2017/09/26 08:09

zbus 0.9.0 新版发布,MQ、RPC、微服务总线

经过相当长一段时间的重构优化,zbus新版0.9.0发布。 依然保持小巧极速易用,核心~400K Jar包,发行 ~3M,极少依赖,重点增强: 消息队列(MQ) 单播、广播、组播、订阅消息模式统一 支持磁盘...

2017/09/18 11:45

zbus-6.3.0 发布,轻量级 MQ,RPC 服务总线

zbus-6.3.0 发布了,主要改进内容包括: 1. 增加主从队列支持 2. 增加消息过滤机制,根据消息键值决定是否写入消息队列磁盘。 3. 增加不经过网络传输的JVM内部通讯优化的JvmBroker 4. 增加Z...

2016/03/22 09:45

zbus-6.2.0 发布,轻量级 MQ,RPC 服务总线

zbus-6.2.0 发布,整个项目模块化重构,改进内容: MQ默认直接采用持久化。MQ速度在SSD磁盘上可达200M+/s,数十亿级消息堆积测试(100G+磁盘) RPC支持分为直接RPC与基于MQ的RPC,直接RPC性能...

2015/09/21 09:37

没有更多内容

加载失败,请刷新页面

1
回答
zbus中group的filter是什么

@少帮主 你好,想跟你请教个问题:如何能让此consumer能收到消息呢,group的作用。 ConsumerConfig config = new Co...

2017/12/15 16:59
2
回答
zbus python rpc service 启动异常

# encoding=utf8 import sys sys.path.append("../../") from zbus import Broker...

2017/11/29 11:01
7
回答
1
回答
请问ZBUS能实现JAVA的服务端和C#客户端RPC通信吗?

@少帮主 你好,想跟你请教个问题: 我可以用java发布RPC服务,c#客户端来调用吗? 看你提供的非JAVA API DEMO都是发布服务和调用服务,或...

2017/03/31 13:22
1
回答
zbus rpc不支持com.jfinal.plugin.activerecord.Page类型

@JFinal @少帮主 你好,想跟你请教个问题: 尝试了一下rpc的直连,发现zbus不支持JFinal的com.jfinal.plugin.activ...

2016/02/01 15:58
2
回答
RPC 远程调用超时

@少帮主 你好,想跟你请教个问题: import java.io.IOException; import org.zbus.broker.Broker; ...

2015/12/31 11:11
1
回答
zbus发送topic 接收不到,大神帮看看

@少帮主 你好,想跟你请教个问题: 消费者 public class TopicConsumer { public static void main(St...

2016/06/14 12:48
17
回答
互联网公司的RPC框架如何选择?
-赵本山- 的回答 2016/02/03 11:25
最佳答案
公司app用户1000W。后台JAVA用dubbo + zookeeper
1
回答
zbus 在jfinal 中不能关闭

我自己写了一个zbus在jfinal 的插件,然后在stop 方法里调用消费者 consumer 的close 方法,但是一直卡在这里,导致整个工程不能停止

2016/05/15 22:46
2
回答
ZBUS 并发测试服务端报错

@少帮主 你好,请教你个问题: zbus 下 net 包的 Demo(MyClient.java 、MyServer.java),测试发现在200左右并发...

2016/04/22 09:56

没有更多内容

加载失败,请刷新页面

ZBUS高可用HA介绍

请参考最新文档 http://zbus.io/guide/ha?menu=ha http://git.oschina.net/rushmore/zbus 1. ZBUS 高可用设计 Zbus高可用采用ZbusServer + TrackServer结合完成,相对于单机版本的zbus,客户...

2015/12/21 15:52
5.3K
6
ZBUS入门文档

ZBUS能干啥,怎么用,有啥特点

2015/09/07 11:01
3.2K
5
使用微软MSMQ可能遇到的坑

最近重新捣鼓回 ZBUS5.0 与 微软MSMQ对接,碰到了些坑,希望能对新手有所帮助。

2014/08/21 15:25
1K
0
Zbus的JFinal插件实现第二版

Zbus的JFinal插件实现第二版

2015/08/02 21:21
1K
2
ZBUS项目结构概貌

zbus项目结构概貌,自成体系,简洁但不失功能性与扩展性

2015/09/17 10:22
1K
1
实现了Zbus的JFinal插件,JFinal里用Zbus更方便了。

实现了Zbus的JFinal插件,JFinal里用Zbus更方便了。

2015/07/29 21:38
2.5K
3
zbus消息唯一性约束增强

zbus-6.3.0 (master)增加新特性,支持对队列消息的唯一性约束,生产者可以在消息头部打标识(键名key),唯一标识决定消息是否入队列。使用示例 BrokerConfig config = new BrokerConfi...

2016/01/01 09:32
549
0
基于zbus的MySQL透明代理(<100行)

zbus.NET网络通讯模块(二),以实现MySQL服务器透明代理讲述zbus.NET网络通讯模块的小巧与精干的编程能力。

2015/09/29 20:26
5.2K
16
优质实用的开源项目推荐

致力于推荐各类好的开源项目用于解决开发中遇到的细节场景,原则为:方便、实用、尽可能零依赖的项目(长期持续更新)。

2016/03/01 09:01
167
1
maven常见使用命令

maven 命令

2015/04/30 10:01
44
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部