yedf2
yedf2
> C# 的SDK 很想要,有相关的SDK开发文档吗 目前我们有PHP、python、node、go的SDK,您可以参考。这些项目都在 http://github.com/yedf 下面能找到
> 请问目前有Java SDK的计划吗?我们目前是PHP和Java混合项目,期待能有Java SDK出现 已有Java SDK,参考 https://github.com/yedf/dtmcli-java
> 代码结构有点乱, dtmcli 是golang版本的http sdk, dtmgrpc 是 grpc sdk, 但是dtmsvr 又依赖了dtmcli的代码? 以及大量的字符串常量用来表示状态,影响可读性。 希望能改进一下 对于dtmsvr和dtmcli公用的代码,您认为如何组织更好?dtmsvr依赖dtmcli看起来并没有造成混乱,这样的主要目的是为了保持dtmcli的简单,不用再引入一个包。对于大多数用户来说,关心dtmcli就可以了 字符串表示状态,这样的可读性并不差呀,不太清楚您想要如何改善可读性?
> 能否把提供OpenAPI Specification的swagger文件,这样方便各种语言client的自动生成? 能否给个参考资料,我看看
我有空再研究一下,因为dtm一般不会裸着用http请求,通常会封装一层比较薄的SDK,要处理一下branch_id,子事务屏障等,所以直接生成的http client不太实用
> 子事务分支存在依赖关系,这么怎么做呢 这个是指什么样的依赖?
> 请问是否有支持事物表分库分表的计划,如果业务上面日均业务量比较大,可能需要进行水平扩展。 参考一下这个建表语句:sqls/dtmsvr.tdsql.sql。如果你已经有相关的实际场景,可以在群里讨论
> PHP 的两阶段提交SDK什么时候能支持,文档说目前仅支持TCC,希望优先考虑 因为我不熟悉PHP,所以PHP的相关代码是由社区贡献的,欢迎PR
> 比如补偿分支依赖正向分支的结果呢?感觉这个框架不能解决相对复杂的场景 补偿分支依赖正向分支的结果,这个可以直接在业务层解决,解决方案通常比较简单。如果放到分布式事务框架里面来做,反而非常复杂
> 针对python的sdk,看到业务回调需要依赖pymysql的cursor对象。希望业务代码回调能支持基于sqlalchemy的session的形式。补充:查阅barrier.py中使用cursor主要是用来执行commit, rollback,具体行为和session相似,只是对dtm_barrier表的写操作获取affected数量还不太确定session是否可以达成和cursor相同的效果。 您的建议非常好,欢迎提PR