dtm-labs/dtm

RoadMap

yedf2 opened this issue · 11 comments

yedf2 commented

Roadmap:

  • Supported patterns
    • SAGA (concurrent)
    • TCC(netsted)
    • XA (XA vs AT)
    • MSG (2-phase message)
  • Supported DB
    • Store Engine
    • Sub-transaction barrier
    • Mysql(Mariadb、TiDB、TDSQL)
    • Postgres
    • Bench test
  • Redis
    • Redis store engine
    • Redis sub-transaction barrier
    • Bench test
  • Mongo support
    • Mongo sub-transaction barrier
  • Micro-service support
    • go-zero
    • Polaris
    • Kratos
  • Startup easily
    • Support embedded boltdb
    • Homebrew install support
  • Application of DTM
    • Flash-sale application
    • Order application
    • Cache application
    • zero-mall integration
  • Dashboard
    • Stats monitoring
    • Configuration
    • 2-phase message configuration
  • Cluster version
  • 使用 cobra 来管理各种启动的子命令
  • 使用 viper 来管理配置

是不是可以加上?

yedf2 commented

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

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

大佬,除了支持接入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消失了,跪求那么多的例子能回来啊

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

yedf2 commented

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

欢迎社区能够帮忙贡献

yedf2 commented

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

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

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

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

能否添加 prometheus 监控?

yedf2 commented

已经支持,文档里有

wooln commented

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

wooln commented

Expect admin page authentication.

relxet commented

Expect admin page authentication.

no need, use nginx auth basic