服务发现
(读《凤凰架构》服务发现-笔记)
服务发现三个必须的过程
-
服务的注册
服务启动的时候,以某种方式将自身坐标信息通知到服务注册中心
-
服务的维护
服务发现框架必须要保证维护的服务列表的正确性,也就是说去监控服务是否健康存货,将不健康的服务自动从服务注册表中剔除
-
服务的发现
服务的消费者从服务发现框架中,把一个符号转换为实际坐标的过程,这个过程一般通过HTTP API请求或者DNS Lookup操作来完成。
涉及到分布式的系统,都是分两类 AP系统、CP系统(涉及到分布式系统中的CAP问题,AP为保证可用性和分区容忍性,CP为保证一致性和分区容忍性)
选用AP还是CP类型的服务发现框架,取决于如果系统在出现网络分区之后,比如系统形成了A、B两个网络分区,A区域的服务只能从A区域内的服务发现节点获取到服务的坐标信息,B区域的服务只能从B区域内的服务发现节点获取到服务的坐标信息,这种情况对我们的系统会有什么影响?
如果说这种情况对我们的系统没有太大的影响,那么就选AP式的服务发现,如果说这种情况是不能容忍的,会对系统产生很大的影响,那么就选CP式的服务发现。