聊聊微服务的服务注册与发现
引言 聊起微服务的服务注册与发现,很多人立马就会脱口而出 zk、etcd、consul、eureka 这些组件,进而聊到 CAP 如何取舍,性能如何,高可用和容灾是怎么实现的。 在这之前,站在组件使用者的角度,我想先问这么几个问题: 注册的 IP 和端口怎么确定 ? 实现服务治理还需要注册哪些信息 ? 如何进行优雅的服务注册与服务下线 ? 注册服务的健康检查是如何做的 ? 当服务有节点退出或新的节点加入时,订阅者能不能及时收到通知 ? 我能方便地查看某个应用发布和订阅了哪些服务,以及所订阅的服务有哪些节点吗 ? 看完这些问题后,您也许会发现,对于服务注册与发现,首先应该关注的是服务注册发现本身的功能,然后才是性能和高可用。 一个好的服务注册发现中间件,应该是能完整地满足服务开发和治理的基础功能,然后才是性能和高可用。如果没有想清楚前面的功能,再高的可

