实用的国产优秀开源中间件 | 码云周刊第 52 期
在系统软件之中,操作系统、数据库、中间件的三驾马车,中间件是最神秘的,而且是一个专业化非常强的细分产业。中间件技术主要用来支撑分布式软件的开发,在大型分布式软件系统中中间件技术发挥着极其重要的作用。今天为大家推荐 7 款国产开源的中间件项目,希望能够让你体会到中间件技术的魅力。
如果大家有好的中间件开源项目,也可以托管到码云上,我们会及时给予推荐。最后,如果你很喜欢以下提到的项目,别忘了分享给其他人噢。
码云项目推荐
1. 项目名称:高性能Redis中间件服务 nredis-proxy
项目简介: nredis-proxy 是一个以redis 协议为主的高性能稳定的代理中间件服务,不侵入业务代码,与业务毫无联系,不需要改任何应用代码,天然支持分布式部署。
2. 项目名称:.net 业务消息队列 Dyd.BusinessMQ
项目简介:.net 业务消息队列是应用于业务的解耦和分离,应具备分布式,高可靠性,高性能,高实时性,高稳定性,高扩展性等特性,其优点主要是:
大量的业务消息堆积能力
无单点故障及故障监控,异常提醒
生产者端负载均衡,故障转移,故障自动恢复,并行消息插入。
消费者端负载均衡,故障保持,故障自动恢复,并行消息消费。
消息高可靠性持久化,较高性能,较高实时性,高稳定性,高扩展性。
支持99*99个消息分区,单个消息分区单天支持近1亿的消息存储。
消费者拉方式获取消息,在高并发,大量消息涌入的情况下,只要消费能力足够,不会有消息延迟,消息越多性能越好。
项目地址:车江毅/BusinessMQ
3. 项目名称:基于 RabbitMQ 实现的消息中间件 WMQ
项目简介:WMQ 是用 Golang 编写的基于 RabbitMQ 实现的消息中间件,在系统架构对解耦现有业务起到至关重要的作用,服务基于 HTTP 的 API 方式具有跨语言的特点,接入十分简单。能够很好的解决并发控制,异步任务,以及消息订阅与分发。
项目地址:狂奔的蜗牛./wmq-go
4. 项目名称:开源实时消息推送系统 MPush
项目简介:mpush,是一款开源的实时消息推送系统,采用java语言开发,服务端采用模块化设计,具有协议简洁,传输安全,接口流畅,实时高效,扩展性强,可配置化,部署方便,监控完善等特点。同时也是少有的可商用的开源push推送系统。
项目地址:MPUSH消息推送/mpush
5. 项目名称:分布式 TCP 推送系统 GPush
项目简介:一个 linux 下高效的,分布式 TCP 推送系统实现,单台连接服务器支撑超过百万以上连接,主要适用于千万在线级别规模的应用,对比第三方推送平台,主要优势在于,服务自建,推送效率高,而且可以很方便进行功能扩展。
项目地址:老强/GPush
6. 项目名称:轻量级Java消息中间件 Uncode-MQ
项目简介:java 轻量级消息中间件,其功能特点如下:
消息存储速度非常快速。
使用简单方便,目前只支持topic方式。
依赖java环境。
项目地址:uncode/uncode-mq
7. 项目名称:MQ、RPC、服务总线 zbus
项目简介: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 为微服务架构、系统整合、弹性计算、消息推送等场景提供开箱即用的功能支持。
项目地址:rushmore/zbus
/
REVIEW往期精彩
精选国产 IntelliJ IDEA 优秀插件 | 码云周刊第 50 期