1.Eureka

如果某一天这些微服务的端口或是地址大规模地发生改变,我们就不得不将服务之间的调用路径大规模的同步进行修改.因此我们需要一个集中管理微服务的平台,Eureka能够自动注册并发现微服务,然后对服务的状态、信息进行集中管理,这样当我们需要获取其他服务的信息时,我们只需要向Eureka进行查询就可以了
1.2微服务的注册与发现
(1)在父工程中添加一下SpringCloud的依赖
(2)在eureka模块下的pom.xml添加依赖
(3)为eureka模块添加主类
注意添加注解@EnableEurekaServer
(4)为eureka模块添加配置
(5)为每个微服务添加依赖
(6)为每个微服务修改配置
(7)为每个微服务添加服务名称
(8)调用例子
以下是一个不同微服务之间调用的例子:
不同微服务之间使用http进行数据交互
http://微服务名:端口号/xxx/xxx
1.3注册中心高可用
虽然Eureka能够实现服务注册和发现,但是如果Eureka服务器崩溃了,所有需要用到服务发现的微服务就GG了,为了避免,这种问题,我们也可以像上面那样,搭建Eureka集群,存在多个Eureka服务器,这样就算挂掉其中一个,其他的也还在正常运行,就不会使得服务注册与发现不可用
1.3.1配置
首先我们需要修改一下Eureka服务端的配置文件,这里我们创建两个配置文件:
对创建的两个配置文件分别添加启动配置,直接使用spring.profiles.active
指定启用的配置文件即可:


两个Eureka管理页面都可以被访问,我们访问其中一个:可以看到下方replicas
中已经包含了另一个Eureka服务器的地址,并且是可用状态


接着我们对每个微服务配置也进行修改:
可以看到,服务全部成功注册,并且两个Eureka服务端都显示为已注册:

将其中一个Eureka服务器关闭掉,可以看到它会直接变成不可用状态:
