zoukankan      html  css  js  c++  java
  • 注册中心的区别

    CAP定理

      C:consistency,一致性,在分布式系统中所有的数据备份,在同一时间段拿到的都是同样的数据。(等同于所有的节点访问同一份最新的数据副本)

      A:Availability,可用性,在集群总一部分节点故障后,集群整体是否还能响应客户端的读和写请求。(通俗点说,当一个计算机宕机了,整个系统还可以用)

      P:Partition tolerance,高可用性,一个节点崩了,并不影响其它节点(100个节点,挂了几个,不影响服务,越多机器越好)

      总结:最多实现两点,不可能同时兼顾。

    三个注册中心

    1、Eureka

      Eureka中没有使用任何的数据强一致性算法保证不同集群间的Server的数据一致,仅通过数据拷贝的方式争取注册中心数据的最终一致性,虽然放弃数据强一致性但是换来了server的可用性,降低了注册的代价,提高了集群运行的健壮性。

    2、consul

      基于Raft算法,Consul提供强一致性的注册中心服务,但是由于Leader节点承担了所有的处理工作,势必加大了注册和发现的代价,降低了服务的可用性。通过Gossip协议,Consul可以很好地监控Consul集群的运行,同时可以方便通知各类事件,如Leader选择发生、server地址变更等。

    3、zookeeper

      基于zab协议,zookeeper可以用于构建具备数据强一致性的服务注册与发现中心,而与此相对地牺牲了服务的可用性和提高了注册需要的时间。

    三个注册中心的对比

  • 相关阅读:
    相关不是因果,哪又是啥?
    .NET Http请求
    .NET [MVC] 利用特性捕捉异常
    .NET WebAPI 利用特性捕捉异常
    .NET Core[MVC] 利用特性捕捉异常
    .NET Core 如何使用Session
    .NET CORE 使用Session报错:Session has not been configured for this application or request
    .NET Core Cache [MemoryCache]
    .NET CORE 设置cookie以及获取cookie
    webapi 控制json的字段(key)显示顺序
  • 原文地址:https://www.cnblogs.com/HelloM/p/14314578.html
Copyright © 2011-2022 走看看