13 开源服务注册中心如何选型?
上一期我给你讲了服务注册中心的落地实践,以及在实际应用中可能会遇到的问题和对应的解决方案。关于注册中心,如果你的团队有足够的人才和技术储备,可以选择自己研发注册中心。但对于大多数中小规模团队来说,我的建议是最好使用业界开源的、应用比较成熟的注册中心解决方案,把精力投入到业务架构的改造中,不要自己造轮子。
当下主流的服务注册与发现的解决方案,主要有两种:
- 应用内注册与发现:注册中心提供服务端和客户端的SDK,业务应用通过引入注册中心提供的SDK,通过SDK与注册中心交互,来实现服务的注册和发现。
- 应用外注册与发现:业务应用本身不需要通过SDK与注册中心打交道,而是通过其他方式与注册中心交互,间接完成服务注册与发现。
下面我会用两个业界使用比较成熟的注册中心开源实现,来讲解下应用内和应用外两种解决方案的不同之处。
两种典型的注册中心实现
1. 应用内
采用应用内注册与发现的方式,最典型的案例要属Netflix开源的Eureka,官方架构图如下。
!