09-Eureka-搭建eureka服务
1.动手实践:
1.搭建EurekaServer
2.将user-service、order-service都注册到Eureka
3.在order-service中完成服务拉取,然后通过负载均衡挑选一个服务,实现远程调用
2.搭建EurekaServer服务步骤如下:
1.创建项目,引入spring-cloud-starter-netflix-eureka-server的依赖
// eureka服务端
// 这里没有指定版本信息是因为在父工程中已经把版本信息都配置好了
<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
2.编写启动类,添加@EnableEurekaServer注解
@SpringBootApplication
@Slf4j
@EnableEurekaServer
public class EurekaApplication {public static void main(String[] args) {SpringApplication.run(EurekaApplication.class, args);}
}
3.添加application.yml文件,编写下面的配置
我自己就是Eureka,我为什么还要配置我自己的信息呢?
Eureka自己也是一个微服务,所以Eureka在启动的时候,会将自己也注册到Eureka上。这是为了将来Eureka集群之间通信去用的。
比如说我启动了两个或者三个Eureka,将来三个Eureka之间会互相做注册,这样他们就可以做数据交流了,所以将来defaultZone这个地方应该配的是Eureka集群的地址。如果有多个的话,以“,”隔开,现在因为是单机,所以这里配的是自己。所以这里的spring和eureka下面的东西,是为了做服务注册才配的这个信息启动Eureka服务之后。点击后面的10086端口可以直接在浏览器中打开。
在Eureka界面:Instance currently registered with Eureka意思是”注册到Eureka的实例“,什么是实例??一个服务你每启动/每部署一份就叫一个实例,比如user服务我将来在线上部署是个,那就是十个实例。Eureka会记录一个服务的所有实例.
server:port: 10086
spring:application:name: eurekaserver // 服务名称其实就是微服务的名称,注册到Eureka注册中心的时候就是这个名称,eureka自己也是一个微服务,所以他也需要一个名字
eureka:client:service-url:defaultZone: http://127.0.0.1:10086/eureka #Eureka的地址信息
总结:
1.搭建EurekaServer
1.引入eureka-server依赖
2.天假@EnableEurekaServer注解
3.在application.yml中配置eureka地址