Skip to content

Releases: xuxueli/xxl-mq

XXL-MQ v1.2.2,分布式消息队列

21 Dec 07:50
Compare
Choose a tag to compare

Release Notes

  • 1、访问令牌(accessToken):为提升系统安全性,消息中心和客户端进行安全性校验,双方AccessToken匹配才允许通讯;
  • 2、支持批量注册、摘除,提升注册发现性能;升级 xxl-rpc 至 v1.3.1;
  • 3、升级 pom 依赖至较新版本;
  • 4、表结构调整提升兼容性,表名转小写;
  • 5、客户端取消Consumer非空的限制;

XXL-MQ v1.2.1,分布式消息队列

02 Dec 11:30
Compare
Choose a tag to compare

Release Notes

  • 1、单机TPS过万:示例项目中新增功能测试、性能测试用例,以及消息生产、消费、成功率等方便的数据分析;可参考示例项目性能测试用例(章节 “2.6 功能测试 & 性能测试”),单机TPS过万;
  • 2、底层long polling监控keys非法去重问题修复;
  • 3、注册逻辑优化,批量注册,提高注册性能,降低注册中心压力;
  • 4、消息中心RPC服务支持自定义注册IP地址;
  • 5、消息中心内置注册中心线程数优化,精简;

XXL-MQ v1.2.0,分布式消息队列

28 Nov 01:29
Compare
Choose a tag to compare

Release Notes

  • 1、client端与Broker长链初始化优化,防止重复创建连接。
  • 2、POM多项依赖升级;
  • 3、UI组件升级;
  • 4、规范项目目录结构;
  • 6、超时控制;
  • 5、通讯迁移至 xxl-rpc;
  • 6、除了springboot类型示例;新增无框架示例项目 "xxl-mq-samples-frameless"。不依赖第三方框架,只需main方法即可启动运行;
  • 7、消息生产,兼容“异步批量多线程生产”+“同步生产”两种方式,提升消息发送性能;
  • 8、底层通讯全异步化:消息新增 + 消息新增接受 + 消息回调 + 消息回调接受;仅批量PULL消息与锁消息非异步;
  • 9、串行消费优化,旧版本固定第一台消费,导致其压力过大;新版支持自定义shardingId从而实现串行消息的负载均衡,缓解单台压力;
  • 10、广播消息优化,旧版本不支持消息持久化,新版本支持消息持久化,而且广播支持与串行结合实用,更加灵活;
  • 11、并发消息、串行消息、广播消息全部优化重构,底层逻辑统一,方便后续维护扩展;
    • 串行:取消ZK依赖,废弃旧版ZK锁方式;优化为通过消息 shardingId 结合消费者排序取模方式;相同 shardingId 的消息将会固定被同一个消费者消费;
    • 并行:沿用旧版消费者排序取模方式,不过取模参数新增支持 shardingId 参数;确保消息平均分配给在线消费者;
    • 广播:取消ZK依赖,废弃旧版ZK方式;优化为通过消息 group 属性群发方式;每个group都会消费该消息,但相同group下消息仅被消费一次;
  • 12、Broker服务支持自定义指定注册IP等信息,位置 "XxlMqBrokerImpl.initServer";
  • 13、Topic自动发现:消息中心支持动态发现Topic,并展示在消息主题列表,延时1min;
  • 14、运行报表:支持展示在线业务线、消息主题、消息记录等信息、可在线查看消息日期分布图,成功分布图等;
  • 15、业务线管理:支持设置业务线,用于分组管理消息主题;
  • 16、消息主题管理:支持在线管理消息主题,自动发现消息主题;并支持完善消息主题扩展信息,如业务线、负责人、告警邮箱等;
  • 17、消息记录界面,交互优化重构,进一步优化消息筛选、管理交互;
  • 18、自动重试优化,任务重试时,生效时间重置为1min之后,重试次数减一;
  • 19、记住密码功能优化,选中时永久记住;非选中时关闭浏览器即登出;
  • 20、事务开关:支持设置消息事务开关,开启时事务保证消息精准消费一次;未开启时小概率存在重复消费,仅依靠注册中心分片检测避免重复,但性能略高;
  • 21、告警功能:支持以Topic粒度监控消息,存在失败消息时主动推送告警邮件;
  • 22、轨迹Log优化,新增、更新时记录核心数据;消息日志格式统一;
  • 23、消息在线清理:在消息记录界面,支持在线清理消息数据;
  • 24、过期消息自动清理:消息中心新增参数 “xxl-mq.log.logretentiondays”设置消息过期天数,过期成功消息将会自动清理;
  • 25、超时强化,除了客户端支持超时控制外;服务端新增线程扫描,主动处理超时消息;消息超过 "生效时间 + 超时时间 + 1HOUT" 之后仍然未结束,将会主动标记为失败;
  • 26、左侧菜单规范:运行报表(业务线,主题数,消息记录数;总消息成功率,日分布柱状图,总分布饼图) + 消息主题 + 消息记录 + 使用教程;
  • 27、注册中心迁移至DB,基于 "long polling" 实现注册机器实时感知;注册中心代码及逻辑来源自“XXL-RPC原生轻量级注册中心”;
  • 28、轻量级改造,移除对ZK依赖,仅依赖DB即可完整集群方式提供服务;缺点,非强一致性可能导致重复消费,开启事务开关可以避免该问题;
  • 29、文档示例完善,包括:并发消息、串行消息、广播消息、延迟消息、失败重试消息、超时控制消息等;
  • 30、文档完善:消息模型说明,延时消息说明、事务消息说明、失败重试、超时控制说明,
  • 31、容器化:提供官方docker镜像,并实时更新推送dockerhub,进一步实现产品开箱即用;

XXL-MQ v1.1.1,分布式消息队列

16 Nov 03:20
Compare
Choose a tag to compare

特性

1、项目groupId改为com.xuxueli,为推送maven中央仓库做准备;
2、项目推送Maven中央仓库;
3、底层系统优化,CleanCode等;
4、修复confirm和alert弹框冲突导致消息列表错乱的问题;
5、优化ZK注册逻辑,ZK注册基础路径提前初始化;
6、broadcast 广播消息时ZK 发送方不进行watch, 否则发送方也会监听到;
7、修复一处因ReentrantLock导致可能死锁的问题;

分布式消息队列XXL-MQ

28 Aug 06:46
Compare
Choose a tag to compare
v1.0.0

更新RM