教做3d的网站,网络上做广告最好怎么做,wordpress 必须登录,驻马店网站建设熊掌号简介
采用 “单线程” “多路复用” “内存运行” “快照持久化” “Broker 集群模式”#xff08;可选#xff09;基于 Socket.D 网络应用协议 开发。全新设计#xff0c;自主架构#xff01;
角色功能生产端发布消息、定时消息、顺序消息、可过期消息、事务消息。发…简介
采用 “单线程” “多路复用” “内存运行” “快照持久化” “Broker 集群模式”可选基于 Socket.D 网络应用协议 开发。全新设计自主架构
角色功能生产端发布消息、定时消息、顺序消息、可过期消息、事务消息。发送请求rpc。支持 Qos0、Qos1消费端订阅、取消订阅。响应请求消费者消费-ACK自动、手动服务端发布-Confirm、订阅-Confirm、取消订阅-Confirm、派发-Retry、派发-Delayed服务端单线程、内存运行、快照持久化自动、停机、手动、Broker 模式集群、集群热扩展
特点
高吞吐量、低延迟
FolkMQ 纯内存运行每秒能处理几十万条消息最低延迟不到1毫秒。
可扩展性
FolkMQ Broker 集群支持 folkmq-server 节点热扩展。流量高时随时加流量低时可减
持久性、可靠性
消息被快照持久化类似于 redis到本地磁盘并且支持数据备份防止数据丢失
高可用
集群内任何节点坏掉只要还有“一个”同类节点仍可提供服务
快单机版180K TPS。
有点像 Redis 之于 MySql。
本次更新
添加 协议版本的握手传递添加 消息事务支持即二段式提交支持反向事务确认添加 请求响应模式支持即 rpc 模式添加 消息用户属性支持优化 内存占用与快照大小优化 安全停止延时改为4秒优化 客户端相关参数校验优化 客户端的心跳间隔为6秒优化 停止打印信息sokcet.d 升为 2.4.4
启动服务
docker run -p 18602:18602 -p 8602:8602 noearorg/folkmq-server:1.2.2新功能示例事务消息
//准备1.取名字2.添加事务回查
MqClient client FolkMQ.createClient(folkmq://127.0.0.1:18602).nameAs(demoapp) //一般用当前应用名.connect();//用于服务端发起的事务回查
client.transactionCheckback(m - {//客户端未完成事务确认。则由服务端发起补尝确认if(1.equals(m.getAttr(orderId))) {//一般这里需要查询数据库之类的m.acknowledge(true);}
});//发送事务消息
MqTransaction tran client.newTransaction();try {client.publish(demo, new MqMessage(demo1).attr(orderId,1).transaction(tran));client.publish(demo, new MqMessage(demo2).attr(orderId,1).transaction(tran));client.publish(demo, new MqMessage(demo3).attr(orderId,1).transaction(tran));client.publish(demo, new MqMessage(demo4).attr(orderId,1).transaction(tran));tran.commit();
} catch (Throwable e) {tran.rollback();
}新功能示例发送与监听模式 - rpc
//客户端1
MqClient client1 FolkMQ.createClient(folkmq://127.0.0.1:18602).nameAs(demoapp1).connect();//客户端1监听
client1.listen(new MqRouter(m - m.getTag()).doOn(hello, request - {System.out.println(request);request.acknowledge(new StringEntity(me to!));
}));//客户端2
MqClient client2 FolkMQ.createClient(folkmq://127.0.0.1:18602).nameAs(demoapp2).connect();//客户端2发送
Reply reply client2.send(new MqMessage(helloworld!).tag(hello), demoapp1).await();
System.out.println(reply.dataAsString());代码仓库
https://gitee.com/noear/folkmqhttps://github.com/noear/folkmq
官网
https://folkmq.noear.org