mqant
mqant copied to clipboard
服务注销问题
在selector/cache/cache.go文件中,监听到consul的delete消息且某一类节点的数量为0时,会直接删除这一类型的节点,而不会去删除这些节点对应的session
节点的数量不为0时delete,就会正常删除服务和对应的session
这个逻辑会有什么问题吗?
这个逻辑会有什么问题吗?
162行删除节点的时候不会执行Watcher去删除这些节点对应的session
比如开了两个类型的服务,login和game,login是单开的。如果只开一个game节点,重启这个game,login的rpc会发到重启之前的game上去,就是session没删掉。game多开,重启单个game就是正常的。
session的存储不是需要自己实现吗,这个可以通过 验证 session的连通性 判断,不连通的话就删除记录