跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 基于本地消息表的事务补偿中间件 tx-queue
未分類
7 2 月 2021

基于本地消息表的事务补偿中间件 tx-queue

基于本地消息表的事务补偿中间件 tx-queue

資深大佬 : Caesar123 3

目前支持 Oracle 、MySQL
https://github.com/yxz1025/tx-queue
大佬有話說 (6)

  • 資深大佬 : mmdsun

    404 ?

  • 資深大佬 : lewis89

    本地消息表? 之前用这个方案被面试官吐槽了..
    因为用消息队列本身就是因为本地事务太大,可能导入写入压力大,而把写入压力交个消息中间件,
    然后通过消息来维护数据的最终一致性

  • 主 資深大佬 : Caesar123

    @lewis89 本地事务尽量需要精简,而且加了这个整个事务不会拉太长,实际生产环境你可以压测试试看

  • 主 資深大佬 : Caesar123

    @mmdsun 打不开?

  • 資深大佬 : lewis89

    @Caesar123 #3 是的,我有测试过,本地消息表 可靠性好,加一个消息的写入并不会增加太大的事务压力,而且可靠性比 使用预提交的消息队列 要简单的多,麻烦的是 如果你做了水平拆分,消息如果是落地对应的分库那么本地事务就好说,如果消息统一落地一个统一的库 那么就是 XA 事务 做起来更复杂,如果消息有全局顺序依赖 提取多个分库的本地消息表就不太好做.. 当然一般不会有业务有全局消息依赖,都是局部顺序依赖

    如果只是提交给消息队列,通过预提交 由消息队列中间件来询问你本地事务是否提交 是一个比较简易的方案,消息顺序性其实是消息中间件来保证了.. 应用层只要考虑分布式锁来保证消息的投递顺序..

  • 主 資深大佬 : Caesar123

    @lewis89 消息队列这种方案就是对于第三方依赖性太强了,比如消息丢失,消息是否投递成功等等,tx-queue 这种就是先将消息写入本地表,然后通过线程分发进行进行消息投递,这种消息的存储是和你本地事务绑定在一起的,这种就属于轻量级的侵入了,不过要看场景,强事务的一致性不太适合,比如库存扣减等等

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具