功能简表
角色 |
功能 |
生产者(客户端) |
发布消息、定时消息(或叫延时)、顺序消息、可过期消息、事务消息。支持 Qos0、Qos1 |
|
|
消费者(客户端) |
订阅、取消订阅。消费-ACK(自动、手动) |
|
|
服务端 |
发布-Confirm、订阅-Confirm、取消订阅-Confirm、派发-Retry、派发-Delayed |
本次更新
- 添加 自定义 tid(key) 支持(之前自动生成)
- 添加 PackagingLoopImpl 新的构造函数
- 添加 外部配置文件加载支持(
./data/app.yml
)
- 添加 消息二进制数据支持(可以方便不同的消息数据序列化)
- 添加 顺序消息分区支持(在集群下才有效)
- 优化 顺序消息没有消费者时 server 端 cpu 过高的问题
- 优化 企业版授权控制
- 优化 Server 预关闭支持
- 优化 顺序消息的强制派发处理
- sokcet.d 升为 2.4.10
面向简单编程
1) 启动服务
docker run -p 18602:18602 -p 8602:8602 noearorg/folkmq-server:1.4.2
2) 编写程序
<dependency>
<groupId>org.noear</groupId>
<artifactId>folkmq-transport-netty</artifactId>
<version>1.4.2</version>
</dependency>
public class ClientDemo {
public static void main(String[] args) throws Exception {
//创建客户端,并连接
MqClient client = FolkMQ.createClient("folkmq://127.0.0.1:18602")
.nameAs("demoapp")
.connect();
//订阅主题
client.subscribe("demo.topic", message -> {
System.out.println(message);
});
//发布消息
client.publish("demo.topic", new MqMessage("helloworld!"));
}
}
代码仓库
- https://gitee.com/noear/folkmq
- https://github.com/noear/folkmq
官网