137-rick / Dora-RPC

DoraRPC is an RPC For the PHP MicroService by The Swoole
468 stars 101 forks source link

ip自动情况下,有可能出现group发生变化(运行了其它dora server),而monitor机制仍然正常的情况 #28

Closed ddonng closed 7 years ago

ddonng commented 7 years ago

虽然这种情况可能比较特殊,不过我使用docker确确实实遇到了。

描述: 由于redis中dora.serverlist中没有用redis ttl,依赖的是server report。如果server ip是自动获取的,比如这种情况会发生问题:Server1原ip 172.20.0.12,其group为groupA。服务重启(或重建),Server1的ip变为172.20.0.20,其group为groupA;原ip 172.20.0.12可能成为了Server2,其group为groupB。这个时候,172.20.0.12这个ip的时间戳仍会更新,client的monitor会继续生成groupA中含有172.20.0.12。