这次真的要跟注册中心讲拜拜了,微服务不再需要占用一套注册中心集群了,大大节约了运维成本
更新点如下
- 丢弃了一开始的【生产者->注册中心->消费者】模型
- 采用传染机制,实现服务的发现与治理
什么是传染机制
- 常规的分布式采用的是【生产者->注册中心->消费者】模型,生产者将接口给注册中心,消费者从注册中心发现其他的服务,实现调用
- 传染机制就是丢弃注册中心,可以把接口看做病毒,服务看做是人,服务之间只要有直接或者间接的联系,最终都会被染上病毒(接口)
比如我们现在有三个服务
这些服务之间是相互独立的,他们无法发现对方,所以我们需要做一些事
可以将他们连接起来
比如像这个样子【图1】
也可以是这样子【图2】
连接方式随意,只要别让任何服务落单即可
当这些服务连接后,会发生什么
我们用图1来举例
- 当A启动时,此时只有一台服务,所以相安无事,完全独立
- 当B启动时,由于A连接的是B,所以A,B之间产生了关系,他们的接口会互相传染,此时A中有B的接口,B中有A的接口
- 当C启动时,由于B连接的是C,所以B,C之间产生了关系,而B和A又存在关系,所以三台服务器都产生了关系,他们的接口再一次相互传染了,此时A,B,C都有对方的完整接口列表
- 如果三台服务中任意一个宕机了,也没关系,因为他们的接口已经传染开了,所有服务都产生了联系,可以跳过一开始的传染途径,直接进行感染
- 宕机的这个服务的接口会从其他的服务上自动消失
官方网站
注意:本文归作者所有,未经作者允许,不得转载