Eureka概念及简单应用

1、为什么使用Eureka? 

在Spring Cloud中我们经常使用Eureka,是因为SpringCloud对Eureka支持力度非常大 ,Eureka的社区活跃多较高,版本更新的速度快。

Eureka简介:

Eureka是Netflix开发的服务发现组件,能够实现服务注册、注销、健康检查,服务发现等功能,它本身是基于Restful API服务的,用来达到负载均衡和中间层服务故障转移的目的。

2、Eureka原理:

Eureka概念及简单应用_第1张图片

从上图中说明Eureka的原理:

1、Application Service是服务提供者,是从Eureka的Region中查找Zone对应的Eureka Server,为服务消费者提供服务;

2、Make Remote Call是服务提供者与服务消费用的调用关系,是采用Restful API风格

3、us-east-1c,us-east-1d,us-east-1e分别是Eureka的Zone,都属于Eureka的Region,这个Region名字就是us-east-1

4、Application Client是服务消费者,是一个JAVA客户端,用于简化与Eureka Server的交互,客户端同时也具有一个内置的、使用轮询负载算法的负载均衡器。

5、Eureka Server之间是通过复制的方式做数据同步的

6、Eureka还提供了客户端缓存的机制,即使所有的Eureka Server都挂掉,客户依然可以利用缓存的信息消费其它服务

7、Eureka Server与Eureka Client之间采用心跳机制,进行健康检查,每30秒发送一个心跳,检查服务是否有效。

综上:Eureka是通过心跳检测、健康检查、客户端缓存机制确保了系统 的高可用性、灵活性和可伸缩性。

3、 Eureka对于权限注意事项

如果你在工程中引入下面的包,如果不注解掉,系统会自动给设置一个随机的密码,尽管在Application.yml 文件中eureka.client.serviceUrl.defaultZone设置成http://ocalhost:8761/eureka(没有设置成http://user:password@localhost:8761/eureka),在登陆Eureka主界面, 仍然需要登陆(账号是user,密码是系统随机的)

4、Eureka高可用配置

Eureka本身即是Client,也是Server,所以如果部署三个节点,实现高可用, 需要让第一个节点都注册到其余的两个节点中,如下图:

Eureka概念及简单应用_第2张图片

Eureka实现高可用的主要原理就是相互之间注册,相互之后备份,保证了注册信息数据一致性。

5、通过Eureka/apps能够访问注册的服务相关属性,如下图所示:

Eureka概念及简单应用_第3张图片

也可以指定某个服务进行单独查看,如下图所示:

Eureka概念及简单应用_第4张图片

6、设置home-page-url

从上面 的图中可以看,默认情况下homepageurl是图中的样子,我们可以通过在application.yml中配置这个属性:eureka.instance.home-page-url-path:/ribbon,这样访问的时候,hompageurl就是变成了http://192.168.0.104:7900/ribbon;

 

你可能感兴趣的:(study)