浅谈nacos、eureka、consul、coreDNS、zookeeper

集群,微服务

   衍生出几个问题

1.什么是微服务

2.它们之间是怎么相互协调工作的

3.分别有什么注册中心

4.区别是什么

一.什么是微服务

微服务是一种用于构建应用的架构方案。之前一整个应用采用的是(单体)巨石的项目结构,功能之间互相引用,一荣俱荣,一损俱损,有时候只修改其中某一个小功能的bug,整个工程都要进行重启

微服务就是,把这个巨石项目进行拆解,然后再通过某种方式互相引用,共同构建组成一个应用,每个功能都可以独立部署,需要时能互相协调,故障时又不会影响其它功能的正常使用,具有很好的伸展性和扩张性

二.它们之间是怎么相互协调工作的

那这些微服务是怎么协调工作的呢?

同学A:那还不简单,http啊 post,get,websockt,webservice 等等等等

同学A回答的确实不错,这些方式都可以进行协调工作,但是有一个问题,这种做法是需要我们自己明确对应的URL,如果服务器模块有扩张,迁移等情况,那会出现很多问题,集群模式下,你完全不知有多少模块有引用到这个迁移模块

  1. 目标服务肯定会做扩容,扩容以后,客户端会带来一些变化
  2. 客户端对于目标服务如何进行负载均衡
  3. 客户端如何维护目标服务的地址信息
  4. 服务端的服务状态变化,如何让客户端进行感知

 那这个时候有个叫注册中心的人跑出来说:"我来".

然后经过一系列的约定,建立了一个通讯录一样的东西,你call某一串号码,就是打电话给张三,然后张三就给你提供你想要知道的东西,张三就是出差到北京,上海,都与你无关,你一样能联系到他

服务注册中心(下称注册中心)是微服务架构非常重要的一个组件,在微服务架构里主要起到了协调者
的一个作用。注册中心一般包含如下几个功能:
1. 服务发现:
服务注册/反注册:保存服务提供者和服务调用者的信息
服务订阅/取消订阅:服务调用者订阅服务提供者的信息,最好有实时推送的功能
服务路由(可选):具有筛选整合服务提供者的能力。
2. 服务配置:
配置订阅:服务提供者和服务调用者订阅微服务相关的配置
配置下发:主动将配置推送给服务提供者和服务调用者
3. 服务健康检测:
检测服务提供者的健康情况
 

三.分别有什么注册中心

nacos、eureka、consul、coreDNS、zookeeper  听说redis也可以做注册中心

四.区别是什么

NacosEurekaConsulCoreDNSZookeeper
一致性协议CP+APAPCPCP
健康检查TCP/HTTP/MYSQL/Client BeatClient BeatTCP/HTTP/gRPC/CmdKeep Alive
负载均衡策略权重/metadata/SelectorRibbonFabioRoundRobin
雪崩保护
自动注销实例支持支持不支持不支持支持
监听支持支持支持支持不支持支持
多数据中心支持支持支持不支持不支持
跨注册中心同步支持不支持支持不支持不支持
SpringCloud集成支持支持支持不支持支持
Dubbo集成支持不支持不支持不支持支持
K8S集成支持支持支持支持支持

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

斗码士

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值