Eureka 学习之服务注册(一)
1. 简介
Eureka Server
服务注册中心是Spring Cloud Netflix
中的一个组件Spring Cloud Netflix
通过自动配置为Spring Boot
应用程序提供Netflix OOS
集成。通过一些简单的注释,可以快速配置和启用应用程序,并用成熟的Netflix
组件构建大型分布式系统。其中包括服务发现Eureka
,断路器Hystrix
,智能路由Zuul
,负载均衡等。(以上是官网原话)。
以下 Eureka
学习的系列博客记录自己学习 Eureka
的整个过程
2. Eureka Server
由于我是用 idea 自带的 spring Initializr 插件创建的,也可以通过 https://start.spring.io 创建并下载Demo程序 Eureka Server 的创建很简单,只要通过注解和配置文件就能快速启动一个Eureka Server
2.1 创建项目
- Idea 通过 File-New-project 选择 Spring Initializr 插件创建,其它默认 Next
- 配置自己的 Project Metadata
- 选择 Spring Cloud Discovery 中的 Eureka Server 依赖 然后 Next 到底创建
2.2 快速配置
- 对 application.properties 进行配置,也可以使用 yml 文件,看个人喜好了。
# Eureka 服务端口号
server.port=10001
# 应用名
spring.application.name=spring-cloud-eureka-server
# Eureka 相关配置
# 1.主机名
eureka.instance.hostname=localhost
# 2.注册地址
eureka.client.service-url.defaultZone=http://${eureka.instance.hostname}:${server.port}/eureka/
# 3.单节点模式下关闭客户端行为 因为 Eureka Server 也可以互相注册作为集群,今后再讲
eureka.client.register-with-eureka=false
eureka.client.fetch-registry=false
- 对
SpringCloudEurekaServerApplication
增加@EnableEurekaServer
注解
@SpringBootApplication
@EnableEurekaServer
public class SpringCloudEurekaServerApplication {
public static void main(String[] args) {
SpringApplication.run(SpringCloudEurekaServerApplication.class, args);
}
}
- 启动
SpringCloudEurekaServerApplication
通过访问 http://localhost:10001 可以看到如下图则说明启动成功。是不是很简单
这个界面我们可以看到一些 Eureka Server
的健康数据以及基本信息,比如:
server-uptime
:已经启动的耗时current-memory-usage
:当前占用的内存总量Instances currently registered with Eureka
:注册到该中心的服务列表目前没有任何服务ipAddr
:当前Eureka Server
的IP地址,如果没配置eureka.instance.ip-address
使用默认的IP地址。
3. 参考
[Spring Cloud netflix 英文官网][https://spring.io/projects/spring-cloud-netflix]