一、Eureka简介
(一)概念
Eureka是Netflix开源的一款用于服务注册与发现的工具,在微服务架构中扮演着非常重要的角色。它基于REST(Representational State Transfer)风格的服务交互,主要用于解决分布式系统中服务之间的相互调用和服务的动态扩展、收缩等问题。
(二)功能
- 服务注册
- 微服务在启动时,会将自己的服务信息(如服务名称、IP地址、端口号等)注册到Eureka服务器上。这样,Eureka就掌握了所有可用服务的信息。
- 服务发现
- 当一个服务需要调用另一个服务时,它可以从Eureka服务器获取到目标服务的信息。例如,服务A想要调用服务B,它可以向Eureka查询服务B的地址等信息,然后发起调用。
- 服务状态监控
- Eureka会定期检查注册服务的健康状态。如果某个服务长时间没有发送心跳信号(表示服务处于存活状态的信号),Eureka会将该服务标记为下线状态,这样其他服务就不会再调用这个不可用的服务了。
二、Eureka的简单代码示例(基于Spring Cloud)
(一)创建Eureka Server(服务注册中心)
- 引入依赖(Maven项目)
- 在
pom.xml文件中添加以下依赖:
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId> </dependency> - 在
- 启动类添加注解
- 创建一个Java类作为Eureka Server的启动类,例如
EurekaServerApplication.java,并添加@EnableEurekaServer注解:
import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer; @SpringBootApplication @EnableEurekaServer public class EurekaServerApplication { public static void main(String[] args) { SpringApplication.run(EurekaServerApplication.class, args); } } - 创建一个Java类作为Eureka Server的启动类,例如
- 配置文件(application.yml)
- 配置Eureka Server的相关属性,例如端口号、服务注册相关的设置等:
server: port: 8761 eureka: instance: hostname: localhost client: register-with-eureka: false


1万+

被折叠的 条评论
为什么被折叠?



