• 请不要在回答技术问题时复制粘贴 AI 生成的内容
winglechen
V2EX  ›  程序员

搞了个 rocketmq 分支,做了 10W+的可读性优化,对应的书也开始周更,有没有一起研究 MQ 的呀?

  •  
  •   winglechen ·
    winglechen · Nov 20, 2024 · 5796 views
    This topic created in 714 days ago, the information mentioned may be changed or developed.

    搞了个 rocketmq 分支,做了 10W+的可读性优化,对应的书也开始周更,有没有一起研究 MQ 的呀?

    RocketMQ 功能足够,我们主要是做了一些可读性的优化

    • 巨类拆分
    • 大函数拆分
    • ...

    研究过程我们沉淀了,10 几万的文字 + 200+的图片
    准备沉淀成一本小书 《 RocketMQ 源码解析与优化》
    小书内容会在公众号上周更,下图是小书的目录:

    RocketMQ 源码解析与优化

    分支介绍: RocketMQ wolf 开源分支
    开源地址: https://github.com/wolforest/rocketmq

    部分小书的内容:

    48 replies  •  2024-11-22 15:31:20 +08:00
    niexq
    niexq
    Nov 20, 2024
    1
    感谢老哥的开源精神, wolforest/rocketmq 太专业太强了, 期待小书
    winglechen
    winglechen
    OP
    Nov 20, 2024
    2
    @niexq 一起学习,我们的分支改了大半年了,也只能凑合着看,官方分支估计压力太多,核心代码十多年没变过了,我们还是有可能做个分支,融合到官方去的
    niexq
    niexq
    Nov 20, 2024
    3
    嗯嗯嗯, 正在学习, 很佩服老哥, 在带领团队做业务的同时, 还能这么高产的系统输出, 加油持续关注中
    wenliangtiantim
    wenliangtiantim
    Nov 20, 2024
    4
    技术做的深入,总结能力也强,牛!拉代码学习下
    yuliuxuanke
    yuliuxuanke
    Nov 20, 2024 via Android
    5
    厉害
    BBCCBB
    BBCCBB
    Nov 20, 2024
    6
    automq 有搞头
    timepast
    timepast
    Nov 20, 2024 via Android
    7
    带我一个
    cumt21g
    cumt21g
    Nov 20, 2024
    8
    666
    Karte
    Karte
    Nov 20, 2024
    9
    Orz
    huzhizhao
    huzhizhao
    Nov 20, 2024
    10
    666 牛逼
    herofire
    herofire
    Nov 20, 2024
    11
    弓虽啊!牛人
    lrh3321
    lrh3321
    Nov 20, 2024
    12
    666
    winglechen
    winglechen
    OP
    Nov 20, 2024
    13
    @BBCCBB automq 没有历史包袱,只依赖 rocketmq 的协议,代码好很多,不过他们的精力偏向 kafka 了, 开源版 automq-for-rocketmq 好久没更新了
    winglechen
    winglechen
    OP
    Nov 20, 2024
    14
    @timepast 加我微信聊,winglechen
    ala2008
    ala2008
    Nov 20, 2024
    15
    看起来 automq 很强大啊
    winglechen
    winglechen
    OP
    Nov 20, 2024
    16
    @ala2008 automq 是原团队搞的,独立公司在搞,
    automq-for-kafka 可以挣美丽国的钱,automq-for-rocketmq 不太好说,
    不过说回来,学习或者自己部署 rocketmq 用我们的分支更好维护点
    winglechen
    winglechen
    OP
    Nov 20, 2024
    17
    除了 MQ 也可以参与一下我们的其它小书
    ![面向同事编程]( https://www.1t1d.com/software/books-all.png)
    illusory
    illusory
    Nov 20, 2024
    18
    想请楼主评价一下 NATS 作为 MQ 使用的话是不是足够好?
    DiorsPo
    DiorsPo
    Nov 20, 2024
    19
    👍
    DiorsPo
    DiorsPo
    Nov 20, 2024
    20
    代码的可理解在工作中太重要了,作为技术人往往在业务的压力面前丢失了很多追求和操守。看到 OP 团队的工作,有点感动,这才是工程师文化!
    F281M6Dh8DXpD1g2
    F281M6Dh8DXpD1g2
    Nov 20, 2024
    21
    你们搁这团建呢?
    buxushow
    buxushow
    Nov 20, 2024
    22
    支持
    winglechen
    winglechen
    OP
    Nov 20, 2024
    23
    一起学习,我们的分支改了大半年了,也只能凑合着看,
    代码依然还有 20 个参数的函数,还得花更多时间慢慢改,
    不过我们加了注释,看懂估计是问题不大了。

    官方分支估计压力太多,核心代码十多年没变过了,
    现在国内用 rocketmq 的挺多的,rocketmq5 出来后,很多 rocketmq 都升级了
    我们做的分支,完全兼容官方版(现在那部分差异,我们也会搞定),
    是有可能造一个版本,最后融合到官方去的
    winglechen
    winglechen
    OP
    Nov 20, 2024
    24
    @illusory 不好意思,不敢评,我们只是在我们的场景里,拥抱的 rocketmq, 其它的真不懂
    T9F5hFyxSu0de4mO
    T9F5hFyxSu0de4mO
    Nov 20, 2024
    25
    支持😋
    mark2025
    mark2025
    Nov 20, 2024
    26
    感觉好复杂,我选择 pgmq pg 一把梭~
    winglechen
    winglechen
    OP
    Nov 20, 2024 via Android
    27
    @mark2025 pg 还是很吊的,国内的生态还没起来,搞点 pg 的内容 帮 pg 把火烧起来
    mark2025
    mark2025
    Nov 20, 2024
    28
    @winglechen pg 慢慢起来了,信创数据库大部分是 pg 改的。
    pgmq 这种基于 pg 开发的 消息队列插件不用考虑事务实现、数据完整性、服务稳定性,完全是站在巨人的肩膀上开发,省事又省心。
    baolongqishi
    baolongqishi
    Nov 20, 2024
    29
    @winglechen #17 卧槽,这么多啊,太牛逼了老哥
    securityCoding
    securityCoding
    Nov 20, 2024
    30
    厉害啊,这几年一直在 kafka 了
    codegenerator
    codegenerator
    Nov 20, 2024
    31
    @illusory 成熟优秀的 mq 就 2 个,kafka 和 rocketmq
    winglechen
    winglechen
    OP
    Nov 20, 2024
    32
    @mark2025 我们搞过一个 mqclient 的封装,可以接各种 MQ 引擎,目前接了 rocketmq4 和 5, 还有 kakfa
    对于需要适应不同 MQ 的业务可能会有用 调用方式:
    mqTemplate.produce()
    .id(mqTask.getNextTaskId())
    .topic(MQDefaultConst.TOPIC_TABLE_SCAN)
    .tag(PayMQConst.TAG_PAYMENT_DAILY_SUCCEED_BY_CHANNEL)
    .message(scan)
    .delay(scan.getDelay())
    .send();

    mqTemplate.transaction()
    .id(finTransfer.getTransferNo())
    .topic(FinMQConst.TOPIC_TRANSFER_TXN)
    .tag(FinMQConst.TAG_TRANSFER_DECREASED)
    .message(model)
    .property(args)
    .begin();

    代码地址: https://github.com/wolforest/wolf/tree/master/mqclient
    winglechen
    winglechen
    OP
    Nov 20, 2024
    33
    @codegenerator pulsar 还是很吊的,只是它的事务支持方式类似于数据库,对 TCC 这种还要改造,不清楚是不是老外们都不玩 TCC ,TCC 对于有点量的电商,还是很重要的
    airqj
    airqj
    Nov 20, 2024
    34
    虽然用不着
    但是先收藏在说
    redime
    redime
    Nov 20, 2024 via iPhone
    35
    @winglechen 这些小书去哪里看
    winglechen
    winglechen
    OP
    Nov 20, 2024
    36
    @baolongqishi 我们在搞一个技术创作者的联盟,一起沉淀一些有价值的技术内容
    核心有几点:
    * 结构化,
    * 内容共创

    结构化的内容才能避免大量的重复
    共创,类似开源模式,内容多人编辑, 质量才能越来越高
    当然共创对收益怎么分配是有挑战的,
    我们也准备搞个开源的收益分配算法,尝试来解决收益分配的问题

    有没有兴趣,一起搞呀?
    winglechen
    winglechen
    OP
    Nov 20, 2024
    37
    @redime 暂时我们会把内容发布到公众号上,我们在做一个平台,后面内容都会放到平台上

    现在平台还没完全做好,只能凑合着看,https://1t1d.com
    浏览器插件地址: https://chromewebstore.google.com/detail/%E4%B8%80%E5%A4%A9%E4%B8%80%E7%82%B9%E6%B5%8F%E8%A7%88%E5%99%A8%E6%8F%92%E4%BB%B6/mcmkgpnlnnlnbienldgnloecjkpfejac
    小程序还在开发中。
    boshok
    boshok
    Nov 20, 2024
    38
    @winglechen #17 请问图片中的内容是已经存在的,还是将来要做的?
    winglechen
    winglechen
    OP
    Nov 20, 2024 via Android
    39
    @boshok 一部分正在做的,一部分计划做的
    winglechen
    winglechen
    OP
    Nov 21, 2024 via Android
    40
    补充一个有些兄弟问的问题,我们的 github 代码仓库 develop 就是官方分支 我们的分支是 wolf
    wenliangtiantim
    wenliangtiantim
    Nov 21, 2024
    41
    @winglechen 对这个技术创作者联盟的共创模式很感兴趣,希望尽快出一个前期的合作细则,以便大家参与进来啊?
    winglechen
    winglechen
    OP
    Nov 21, 2024
    42
    @wenliangtiantim 目前的合作模式比较简单,按文章来,互相帮助那部分,先不算,类似的,我们平台的目录也不收费,先合作起来,后期再搞复杂的算法分成。
    niexq
    niexq
    Nov 21, 2024
    43
    对技术创作者联盟的共创模式感兴趣+1, 昨天对 github 代码仓库深入学习了下, 信息量很密集, 感谢 OP 团队, 这工程师文化, 慕了
    baolongqishi
    baolongqishi
    Nov 21, 2024
    44
    @winglechen #36 有群吗~
    winglechen
    winglechen
    OP
    Nov 21, 2024 via Android
    45
    先加我微信吧 wx 名子就是 v 站名
    winglechen
    winglechen
    OP
    Nov 21, 2024
    46
    收藏的兄弟很多,还有没有进来参与下的呀?
    niexq
    niexq
    Nov 22, 2024
    47
    @winglechen 老哥, 已加 wx, 通过下呢
    winglechen
    winglechen
    OP
    Nov 22, 2024 via Android
    48
    已通过 不好意思 刚才有点事
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2910 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 61ms · UTC 12:30 · PVG 20:30 · LAX 04:30 · JFK 07:30
    ♥ Do have faith in what you're doing.