nacos和eureka注册中心对比 and CAP定律理解

1.CP和AP不可能同时满足2.P代表分区容错,在整个分布式系统中某个节点服务挂掉了,并不影响整个系统的运作和使用,因为他可以在稍后或者通过切换可用节点立即恢复使用3.C:写操作之后的读操作,必须返回该值。注册中心集群中:leader的作用,所有的写操作都依赖于leader来完成,为了保证数…

大家好,又见面了,我是你们的朋友全栈君。

1. CP 和 AP不可能同时满足

2.P代表分区容错, 在整个分布式系统中某个节点服务挂掉了,并不影响整个系统的运作和使用,

                           因为他可以在稍后或者通过切换可用节点立即恢复使用
 

3.C:  写操作之后的读操作,必须返回该值。

         注册中心集群中: leader的作用, 所有的写操作都依赖于leader来完成,为了保证数据的一致性,  leader只有一个

         假如: 没有leader,首先加入我们新加入一台数据处理服务,就会向注册中心1进行注册,注册中心1写入数据处理服务的ip

                  等等基本信息,并且准备同步给其他注册中心节点, 结果这个在还没发生同步的过程中,注册中心1挂掉了,

                  然后客户端准备调用数据中心写入,这个时候就因为注册中心1挂掉了,就直接切到了注册中心2,但是注册中心2没有

                  收到数据处理服务的添加请求,所以没有这个服务,这个时候就对客户端显示不可用了.

  4. A:   没有leader,可以很容易的切换到可用的注册中心,对于客户端的调用总是及时反应, 在上述C操作的例子中,

             对于向服务注册,获取服务注册的基本信息,比如ip来说,基本不会存在,因为像Eureka来说,我们的服务可以

             向所有的注册中心节点发起注册请求,  这样就不会存在注册中心节点服务列表不一致的情况

 

   阿里的nacos : 性能最好

     他同时支持AP和CP模式,他根据服务注册选择临时和永久来决定走AP模式还是CP模式,

    他这里支持CP模式对于我的理解来说,应该是为了配置中心集群,因为nacos可以同时作为注册中心和配置中心,

    因为他的配置中心信息是保存在nacos里面的,假如因为nacos其中一台挂掉后,还没有同步配置信息,

    就可能发生配置不一致的情况., 配置中心的配置变更是服务端有监听器,配置中心发生配置变化,

    然后服务端会监听到配置发生变化,从而做出改变

    

 eureka+spring cloud config: 

   性能也不差,对于服务数量小于上千台来说,性能没有问题

   eureka: 可以做注册中心,完全AP,支持注册中心之间的节点复制,同时支持服务端同时注册多个注册中心节点,

                  所以不存节点信息不一致的情况

  config: 单独服务,是从git仓库拉取配置信息,然后服务端从config服务里面拉取配置信息缓存到本地仓库

              这里配置的变更比较麻烦,他需要结合bus组件,同时约束了只能用rabbitmq和kafka来进行通知服务端进行配置变更

              但是保证了数据的一致性,因为他的配置信息在git仓库上,git仓库只有一个,就会数据一致          

 

阿里nacos异常情况 leader挂了

   1.不影响服务之间互相调用

    2.不影响服务注册

    3.不影响服务正常启动拉取配置文件

    4.选举新leader差不多4,5秒钟

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/125990.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 【DockerCE】使用Portainer-ce管理监控docker容器实例

    【DockerCE】使用Portainer-ce管理监控docker容器实例PortainerCE CommunityEdi 是 Portainer 官方发布的开源 免费产品 用于服务器上运行的 docker 相关资源的展示 docker 容器实例的运行监控 日志展示 资源使用等 docker 容器实例控制等 此外 官方还有一个收费的商业版本 PortainerBE BusinessEdit 资源展示 运行监控 gt 启动日志 gt 容器资源使用情况容器实例的控制 在已经安装 运行了 do

    2025年11月19日
    4
  • pdaf相位对焦和激光对焦_双像素相位对焦

    pdaf相位对焦和激光对焦_双像素相位对焦pdaf光路图

    2025年9月27日
    3
  • EasyDSS流媒体服务器软件(支持RTMP/HLS/HTTP-FLV/视频点播/视频直播)-正式环境安装部署攻略

    EasyDSS流媒体服务器软件(支持RTMP/HLS/HTTP-FLV/视频点播/视频直播)-正式环境安装部署攻略EasyDSS流媒体服务器软件,提供一站式的转码、点播、直播、时移回放服务,极大地简化了开发和集成的工作。其中,点播功能主要包含:上传、转码、分发。直播功能,主要包含:直播、录像,直播支持RTMP输入,RTMP/HLS/HTTP-FLV的分发输出;录像支持自定义保存时长、检索及下载。提供丰富的二次开发接口,基于JSON的封装及HTTP调用。提供播放鉴权、推流鉴权等安全保证。提供用户及相关权限管…

    2022年6月5日
    49
  • struts2 FilterDispatcher 和 StrutsPrepareAndExecuteFilter 的区别

    struts2 FilterDispatcher 和 StrutsPrepareAndExecuteFilter 的区别转自:http://blog.csdn.net/s_ongfei/article/details/5811070FilterDispatcher是struts2.0.x到2.1.2版本的核心过滤器.! StrutsPrepareAndExecuteFilter是自2.1.3开始就替代了FilterDispatcher的.! 这样的改革当然是有好处的.! 为什么这么说.?应该知道如果我们自…

    2022年8月16日
    7
  • SSM-Spring(1)「建议收藏」

    SSM-Spring(1)「建议收藏」SpringSpring是一个开源的免费的框架Spring是一个轻量级的,非入侵式的框架控制反转(IOC),面向切面编程(AOP)支持事务的处理,对框架整合的支持IOC理论UserDaoUserDaoImpUserSeviceUserServiceImp在之前,用户的需求可能会影响原来的代码。使用一个set。public void setUserDao(UserDao userDao){ this.userDao = userDao;}之前是主动创建对象,控制

    2022年8月9日
    5
  • Java 安全之Java Agent

    Java安全之JavaAgent0x00前言在前面发现很多技术都会去采用JavaAgent该技术去做实现,比分说RASP和内存马(其中一种方式)、包括IDEA的这些破解都是基于JavaA

    2021年12月12日
    38

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号