Eureka--1、初识Eureka

Eureka用于Spring Cloud中的服务注册与发现

 

什么叫服务注册与发现

使用一个专门的服务注册中心,将所有的应用全部注册到注册中心,形成一个map,所有应用需要和外系统进行交换的时候,用服务的“唯一标识ID”去注册中心获取服务的信息进行调用。

 

为什么要有注册中心,注册中心的作用

1、统一管理

不需要每个项目都维护一套map了,由中心来做维护和同步,服务使用者直接使用key值,找到服务地址调用即可。

2、服务发生变更时,调用方无需重启

服务器是动态获取配置的,不需要在配置改变的时候改变。可以实现对外业务系统不停机进行服务升级。

3、高可用

注册中心设计成集群,互为主备,保持高可用。

client自身也会缓存一套map,即使所有的注册中心全部down调,仍然可以使用自己的map,因为大部分情况下短时间内服务地址发生变更的几率非常小。

4、使得客户端负载均衡成为可能。注册中心有能力统计出所有服务器在整个应用集群中的请求session情况,可以实现基于请求数的负载均衡。

5、使得服务治理成为可能。注册中心有能力感知某些服务器的运行情况,网络情况,失败次数,请求的响应时间等,可以实现基于这些数据的服务治理管控。

这只是初步认识,等我们Netflix这个系列讲完,会更明白这些。

 

高可用的Eureka注册中心架构。我们一定要用官方的一张图片。

 

Eureka概念

Eureka本身是为AWS亚马逊云构建的负载均衡中间件,因为比较吊就扩散开了。

是依靠各主机的Session数实现的负载均衡,所以叫做客户端负载均衡

因为亚马逊云的机器遍布各地,他引入了两个概念。RegionZone。这俩玩意本是AWS的概念,也可以推广到类似的大型系统中。具体可以百度,我们就简单说一下。

Region是比较大的分区,Zone是比较小的分区。整个系统有N个Region,一个Region可能又有多个Zone,一个Zone可能有多个Eureka Server和多个Eureka Client。

Region的设置一般是物理上的,或者说地理上的,有一个独立的机房就可以设置为一个Region,因为跨区域的网络一般要经过多层网络,还要有专线,比较昂贵且没有那么快。而机房内部都是内网,很快并且免费。所以在每个Region都有完整的一套程序。当然,数据存储的一致性,那是另外的问题,不展开。

Zone的存在是因为有容灾,自古以来大型系统,一个Region都不可能只有一个机房,如果断电着火水灾了怎么办,所以会搞至少两个机房。那平时应该访问哪个,另一个机房可能是同城,但是仍然是相隔很远的郊区,访问它的服务同样会稍微慢一些,所以我们把服务分到不同的Zone中,优先访问自己Zone内的服务,如果当前Zone内所有的服务都不可用,再去访问其它Zone中的服务。

 

先开个头,都写在一起是在太长了。后面代码先写起来再细讲

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值