XXL-MQ v1.2.1 发布,分布式消息队列,单机 TPS 过万 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
xuxueli
V2EX    推广

XXL-MQ v1.2.1 发布,分布式消息队列,单机 TPS 过万

  •  
  •   xuxueli 2018-12-03 09:32:39 +08:00 1858 次点击
    这是一个创建于 2505 天前的主题,其中的信息可能已经有所发展或是发生改变。

    Release Notes

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

    简介

    XXL-MQ 是一款轻量级分布式消息队列,支持 "并发消息、串行消息、广播消息、延迟消息、事务消息、失败重试、超时控制" 等消息特性。现已开放源代码,开箱即用。

    输入图片说明

    特性

    • 1、简单易用: 一行代码即可发布一条消息; 一行注解即可订阅一个消息主题;
    • 2、轻量级: 部署简单,不依赖第三方服务,一分钟上手;
    • 3、消息中心 HA:消息中心支持集群部署,可大大提高系统可用性,以及消息吞吐能力;
    • 4、消费者 HA:消费者支持集群部署,保证消费者可用性;
    • 5、三种消息模式:
      • 并行消息:消息平均分配在该主题在线消费者,分片方式并行消费;适用于吞吐量较大的消息场景,如邮件发送、短信发送等业务逻辑
      • 串行消息:消息固定分配给该主题在线消费者中其中一个,FIFO 方式串行消费;适用于严格限制并发的消息场景,如秒杀、抢单等排队业务逻辑;
      • 广播消息:消息将会广播发送给该主题在线消费者分组,全部分组都会消费该消息,但是一个分组下只会消费一次;适用于广播场景,如广播更新缓存等
    • 6、延时消息: 支持设置消息的延迟生效时间, 到达设置的生效时间时该消息才会被消费;适用于延时消费场景,如订单超时取消等;
    • 7、事务性: 消费者开启事务开关后,消息事务性保证只会成功执行一次;
    • 8、失败重试: 支持设置消息的重试次数, 在消息执行失败后将会按照设置的值进行消息重试执行,直至重试次数耗尽或者执行成功;
    • 9、超时控制: 支持自定义消息超时时间,消息消费超时将会主动中断;
    • 10、吞吐量: 依赖于部署的消费中心集群和 DB 性能;DB 可借助多表提升性能,不考虑 DB 的情况下,吞吐量可以无限横向扩展;可参考示例项目性能测试用例,单机 TPS 过万;
    • 11、消息可见: 系统中每一条消息可通过 Web 界面在线查看,甚至支持编辑消息内容和消息状态;
    • 12、消息可追踪: 支持追踪每一条消息的执行路径, 便于排查业务问题;
    • 13、消息失败告警:支持以 Topic 粒度监控消息,存在失败消息时主动推送告警邮件;默认提供邮件方式失败告警,同时预留扩展接口,可方面的扩展短信、钉钉等告警方式;
    • 14、容器化:提供官方 docker 镜像,并实时更新推送 dockerhub,进一步实现产品开箱即用;

    文档地址

    技术交流

    6 条回复    2018-12-03 13:19:07 +08:00
    WEIHUANJIHE
        1
    WEIHUANJIHE  
       2018-12-03 10:28:30 +08:00   1
    xuxueli
        2
    xuxueli  
    OP
       2018-12-03 10:31:15 +08:00
    单机 TPS 过万的 MQ,底层使用 Netty + Hessian 通讯( XXL-RPC )异步通讯,远远没达到上限 ~
    flame90
        3
    flame90  
       2018-12-03 12:43:36 +08:00
    建议将这种技术改一下名字,否则不好记,也不太容易推广,建议,勿喷
    xuxueli
        4
    xuxueli  
    OP
       2018-12-03 12:58:37 +08:00 via Android
    @flame90 多谢反馈!
    这是一个系列,一方面改名牵扯到十几个项目,另一方面暂时还没想到理想的名字,所以搁置了。
    mortonnex
        5
    mortonnex  
       2018-12-03 13:02:55 +08:00 via iPhone
    楼主发版太快了吧…对用的人来说压力有点大
    xuxueli
        6
    xuxueli  
    OP
       2018-12-03 13:19:07 +08:00 via Android
    @mortonnex 确实有点频繁了。主要是最近新接入一些企业用户,反馈比较多。后面尽量保持固定发版周期。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2672 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 02:29 PVG 10:29 LAX 19:29 JFK 22:29
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86