服务接口注册:在服务提供方启动时,将自己提供的服务的接口和自己的ip注册到注册中心
服务接口订阅:服务调用方启动的时候,去注册中心查找和订阅服务提供方的ip,然后缓存到本地,用于后续的远程调用
服务发现AP还是CP
综合来看还是AP比较合适一点,因为rpc可以容忍刚上线的几秒钟服务感知不到,所以一般来说只要实现了最终一致性就可以了。
基于zookeeper的服务发现,采用的是CP,在存储的节点很多,且读写很频繁的时候可能由于自身的负载能力而宕机。
基于消息总线的服务发现,注册数据可以全量的放在每个注册中心的内存中,利用消息总线来更新数据。当有一个中心注册节点接受到服务节点注册时,会产生一个消息推给总线,再通过消息总线通知其他注册中心节点更新数据并且服务下发,从而各注册中心间达到最终一致性。
推拉结合,以拉为准。