dtm icon indicating copy to clipboard operation
dtm copied to clipboard

RoadMap

Open yedf2 opened this issue 3 years ago • 11 comments

Roadmap:

  • [x] Supported patterns
    • [x] SAGA (concurrent)
    • [x] TCC(netsted)
    • [x] XA (XA vs AT)
    • [x] MSG (2-phase message)
  • [x] Supported DB
    • [x] Store Engine
    • [x] Sub-transaction barrier
    • [x] Mysql(Mariadb、TiDB、TDSQL)
    • [x] Postgres
    • [x] Bench test
  • [x] Redis
    • [x] Redis store engine
    • [x] Redis sub-transaction barrier
    • [x] Bench test
  • [x] Mongo support
    • [x] Mongo sub-transaction barrier
  • [x] Micro-service support
    • [x] go-zero
    • [x] Polaris
    • [x] Kratos
  • [x] Startup easily
    • [x] Support embedded boltdb
    • [x] Homebrew install support
  • [x] Application of DTM
    • [x] Flash-sale application
    • [x] Order application
    • [x] Cache application
    • [x] zero-mall integration
  • [ ] Dashboard
    • [ ] Stats monitoring
    • [ ] Configuration
    • [ ] 2-phase message configuration
  • [ ] Cluster version

yedf2 avatar Dec 23 '21 02:12 yedf2

  • 使用 cobra 来管理各种启动的子命令
  • 使用 viper 来管理配置

是不是可以加上?

lsytj0413 avatar Dec 23 '21 02:12 lsytj0413

目前子命令不多,主要是在examples里面,可以看看后面的复杂度

viper之前试过,貌似帮助并没有很大,目前的代码,加载yaml和env,看起来暂时够用

yedf2 avatar Dec 23 '21 03:12 yedf2

大佬,除了支持接入http,grpc,是否考虑支持直接传入action,compensation函数?

因为在开发过程中,经常会

  • 直接使用其他服务提供的sdk
  • 有些第三方的服务不支持http,grpc,比如直接使用jdbc,写一个http的wrapper又比较繁琐

如果能直接传入函数的话,就非常方便了,比如go中

func action1(payload interface) error {
}

func compensate1(payload interface) error {
}

func action2(payload interface) error {
}

func compensate2(payload interface) error {
}

saga := dtm.NewSaga(...)
             .Add(action1, compensate1, payload)
              .Add(action2, compensate2, payload)

saga.Commit()

不知这个提议是否有欠考虑的地方?

还有就是0.18之后example folder消失了,跪求那么多的例子能回来啊

csimplestring avatar Dec 31 '21 21:12 csimplestring

提供 helm chart或者直接上k8s的operator,就更方便k8s上的部署

csimplestring avatar Dec 31 '21 21:12 csimplestring

提供 helm chart或者直接上k8s的operator,就更方便k8s上的部署

欢迎社区能够帮忙贡献

yedf2 avatar Dec 31 '21 23:12 yedf2

大佬,除了支持接入http,grpc,是否考虑支持直接传入action,compensation函数?

对于你给出的这个场景,因为所有函数在本地,所以本地事务就能够解决绝大部分,剩下跨数据库的很少,没必要单独支持

还有就是0.18之后example folder消失了,跪求那么多的例子能回来啊

在最新版本的README里面,有一个单独的dtm-examples项目链接,原先的例子,全部都拆分到这个项目了

yedf2 avatar Dec 31 '21 23:12 yedf2

能否添加 prometheus 监控?

Coneboy-k avatar Apr 13 '22 12:04 Coneboy-k

已经支持,文档里有

yedf2 avatar Apr 13 '22 12:04 yedf2

What's the unfinished "Cluster version", the same as Foundation #dtm-multi-instances-solution | DTM tutorial ?

wooln avatar Jun 07 '23 01:06 wooln

Expect admin page authentication.

wooln avatar Jun 07 '23 08:06 wooln

Expect admin page authentication.

no need, use nginx auth basic

relxet avatar Aug 27 '23 07:08 relxet