/folkmq

作一个体验最简单的消息中间件。支持Qos0、定时、过期、顺序、广播、事务、二进制等消息特性。有确认、重试、延时等机制。可嵌入、单机、集群等部署。

Primary LanguageJavaGNU Affero General Public License v3.0AGPL-3.0

FolkMQ

作一个体验最简单的消息中间件。更简单,更未来!

https://folkmq.noear.org

Latest-Version AGPL3.0 Java-8~22 Kotlin-8+ JavaScript-es6+ Python-3.10+
gitee star github star gitcode star



更简单,才更未来

源码简单!架构简单!部署简单!使用简单!(可“内嵌”、可“单机”、可“集群”)

授权说明

本项目采用 AGPL 开源协议,禁止二次封装开源,禁止使用源码编译。获得授权后才可使用,其中:

  • 社区版本(免费),TPS 1_000次/秒以内。采用登记授权方式:登记入口
  • 企业版本采用付费授权方式

功能简介

角色 功能
生产者(客户端) 发布普通消息、Qos0消息、定时消息、顺序消息、可过期消息、事务消息、广播消息
消费者(客户端) 订阅、取消订阅。消费-ACK(自动、手动)
服务端 发布-Confirm、订阅-Confirm、取消订阅-Confirm、派发-Retry、派发-Delayed
服务端 单线程架构、快照持久化、集群热伸缩

特点

  • 高吞吐量、低延迟

集群模式每秒能处理百万消息,最低延迟不到1毫秒。

  • 可扩展性

集群模式支持服务节点热扩展。流量高时随时加,流量低时可减

  • 持久性、可靠性

消息被快照持久化(类似于 redis)到本地磁盘,并且支持数据备份防止数据丢失

  • 快(单机版,大约 180K TPS)

//使用 MacBook pro 2020 + JDK8 本机测试,单客户端发与收(跑分难免有波动,我是选了好看点的)

加入到社区交流群

QQ交流群:316697724 微信交流群(申请时输入:FolkMQ)

开发过程视频记录

官网

https://folkmq.noear.org

特别感谢JetBrains对开源项目支持

JetBrains