apache / servicecomb-pack

Apache ServiceComb Pack is an eventually data consistency solution for micro-service applications. ServiceComb Pack currently provides TCC and Saga distributed transaction co-ordination solutions by using Alpha as a transaction coordinator and Omega as an transaction agent .
https://servicecomb.apache.org/
Apache License 2.0
1.93k stars 436 forks source link

alpha-server 多节点通信问题 #685

Closed githubcheng2978 closed 3 years ago

githubcheng2978 commented 3 years ago

alpha-server 部署多个节点,每个节点都有启一个扫描task,可能Omega与alpha无法通信。只会在某个omega恰恰与alpha连接才会通信,在alpha-server保持了所有omega的OmegaCallback, 这个设计是否合理呢

WillemJiang commented 3 years ago

alpha-server是有主从之分的,是否回滚还是要主alpha-server说了算, 你说的每个节点都启动一个扫描任务 我有点不理解, 这个违反了我们的主从设计原则。

githubcheng2978 commented 3 years ago

alpha-server是有主从之分的,是否回滚还是要主alpha-server说了算, 你说的每个节点都启动一个扫描任务 我有点不理解, 这个违反了我们的主从设计原则。

后面看到在EventScanner 会判断是否为master,后面才理解了。任意一个omega与alpha通信,如果需要回滚,只要将对应的回滚请求返回给任意一个omega即可。