栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Eureka注册中心

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Eureka注册中心

什么是注册中心:     注册中心是微服务架构中的"通讯录",他记录了服务和服务地址的映射关系。在分布式架构中,服务会注册到这里,当服务需要调用其他服务时,就到这里找到服务的地址,进行调用。     就是:在没有注册中心的时候,服务间的调用需要知道被当当服务调方的具体地址(写死的ip:port)。更换部署地址,就不得不修改调用当中的指定地址。而有了注册中心之后,每个服务在调用别人的时候只需要知道服务名称(软编码)就可以了,地址都会通过注册中心根据服务名称获取到具体的服务地址进行调用。 常见的注册中心:     Netfilx Eureka     Alibaba Nacos     HashiCorp Consul     Apache Zookeeper     CoreOs Etcd     CNCF CoreDNS CAP原则:     指的是在一个分布式系统中,Consistency(一致性)、Availability(可用性)、Partition tolerance(分区容错性),三者不可兼得。 取舍策略:     Cap三个特性只能满足其中的两个,取舍无非三种:     ca:如果不要p(不允许分区),则c(强一致性)和a(可用性)是可以保证的。但是放弃p的同时也就意味着放弃了系统的拓展性,也就是分布式节点受限,没得办法部署子节点,这是违背分布式系统这几的初衷的。     cp:如果不要求A(可用),相当于每个请求都需要在服务器之间保持强一致性,而P(分区)会导致同步时间无限延长(也就是等待数据同步完才能正常访问服务),一旦发生网络故障或者消息丢失等情况,就要牺牲用户的体验,等待所有数据全部一致了之后再 让用户访问系统。设计成 CP 的系统其实不少,最典型的就是分布式数据库,如 Redis、Hbase 等。对于这些分布式数据库来说,数据的一致性是最基本的要求,因为如果连这个标准都达不到,那么直接采用关系型数据库就好,没必要再浪费资源来部署分布式数据库。     ap: 要高可用并允许分区,则需放弃一致性。一旦分区发生,节点之间可能会失去联系,为了高可用,每个节点只能用本地数据提供服务,而这样会导致全局数据的不一致性。典型的应用就如某米的抢购手机场景,可能前几秒你浏览商品的时候页面提示是有库存的,当你选择完商品准备下单的时候,系统提示你下单失败,商品已售完。这其实就是先在 A(可用性)方面保证系统可以正常的服务,然后在数据的一致性方面做了些牺牲,虽然多少会影响一些用户体验,但也不至于造成用户购物流程的严重阻塞。 为什么需要注册中心:       注册中心解决了以下问题:
  • 服务管理
  • 服务之间的自动发现
  • 服务的依赖关系管理
    Eureka注册中心的三种角色:     Server、Consumer、Provider。

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/337461.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号