OneInGfw
Results
1
comments of
OneInGfw
需要弄的这么复杂吗? 这两天看了下seata的源码,感觉seata在这块的实现简单一些(也是有问题,直接拨网线它的数据就有问题了)。 我觉得改良后可以这么做: TM启动时往redis注册自己的ip:port, 带过期时间,TM需要定时再刷新以保持redis中的key存在(seata没有定时刷新)。 TC启动时从redis获取所有已经注册的TM的ip:port. 获取后TC再去连接TM. TC也会定时刷新,重新拉取TM列表(seata没有定时刷新)。 上面说的定时刷新的时间可以长一点,比如90s, 以减少对redis的请求。 为了追求实时性,TC可以subscribe channel, TM启动时pushlish一下(seata只有pub/sub, 同时使用了shutdownhook来pub TM的下线事件)。 当然这不是p2p的,是注册中心制的。 我只是疑惑做成p2p这么复杂有什么好处。 5.x版本在注册这块的bug就导致不改源码基本就不可用。 BTW, 6.0版本现在达到能在开发环境使用的地步了吗?