本文主要介绍 Eureka 用来做什么? 如何搭建以及测试;
微服务框架区分于普通的单体架构项目,它是一种经过良好架构设计的分布式架构方案,根据业务功能对系统进行拆分,将每个业务模块都当做是一个独立的项目进行开发,相比较于单体架构方案当然是好处多多,如扩展性比较好,有更低的耦合度,但是如何去远程调用某一个接口或者是功能呢?
某个服务,既可以是提供者(暴露接口给其他微服务调用),也可以是消费者(调用其他微服务提供的接口),那么消费者如何获取服务提供者的具体信息呢?如果有多个服务提供者,消费者该如何选择呢?消费者又是如何感知服务提供者的健康状态呢?这时候 Eureka 的作用就展现出来了!!!
在 Eureka 架构中,主要有两种角色:
总体流程如下图所示:

第一步:创建 EurekaServer 包,pom.xml 中引入 spring-cloud-starter-netflix-eureka-server 依赖;
>
>org.springframework.cloud >
>spring-cloud-starter-netflix-eureka-server >
>
第二步:EurekaServer 启动类中添加 @EnableEurekaServer 注解;

第三步:在 application.yml 中配置 EurekaServer;

第四步:服务注册,如注册 provider-service 注册到 EurekaServer 中;


第五步:服务发现
在 consumer-service 项目中引入 spring-cloud-starter-netflix-eureka-client 依赖;

编写 provider-service 的配置文件;

给 RestTemplate 添加 @LoadBalanced 注解;

到此为止,整体的搭建及服务的注册和发现就完成了,可以根据自己的项目需求进行测试了。