spring cloud eureka快速入门

一、Eureka入门
1.创建一个springboot项目导入jar包

我们这里导入的是eureka-server

		<dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
        </dependency>
2.在配置文件中配置
server.port=10001
spring.application.name=eureka1

# 注册服务地址
eureka.client.service-url.defaultZone = http://localhost:10001/eureka/
# 显示ip地址
eureka.instance.ip-address=true
# 是否开启自我保护机制
eureka.server.enable-self-preservation=false
# server清理无效节点的时间间隔,默认60000毫秒,即60秒
eureka.server.eviction-interval-timer-in-ms= 60000
3.在启动类上加入注解@EnableEurekaServer
@SpringBootApplication
@EnableEurekaServer
public class EurekaApplication {
    public static void main(String[] args) {
        SpringApplication.run(EurekaApplication.class, args);
    }
}

当我们启动时,会报一个错。为什么会报这个错,如何解决呢?
在这里插入图片描述
因为,当启动的时候,会默认向8761端口注册自己,如配置了,就是走配置的端口,我们上面是10001端口。这个时候我们这个服务并没有启动,所以会报这个错。而且在注册自己同时,也会向10001端口。拉取注册信息。同样服务还没有启动,所以报错。当然这个错其实会不会影响我们使用。因为定时任务重试,还是会成功的。
我们可以添加如下配置解决:

# 是否自我注册
eureka.client.register-with-eureka=false
# 是否拉取注册信息
eureka.client.fetch-registry=false

这2个值默认都是true,因为单个eureka并不需要注册自己,也不需要拉取列表,所以可以关闭它。再次启动就不会有错了。

4.注册服务

创建个工程导入eureka-client相关jar

   <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
            <version>2.0.0.RELEASE</version>
    </dependency>

启动类添加注解@EnableEurekaClient

@SpringBootApplication
@EnableEurekaClient
public class OrderServiceApplication {
    public static void main(String[] args) {
        SpringApplication.run(OrderServiceApplication.class, args);
    }
}

添加配置

server.port=9001

spring.application.name=order

# 注册服务地址
eureka.client.service-url.defaultZone = http://localhost:10001/eureka/
eureka.instance.prefer-ip-address=true
# eureka 界面显示的服务名称格式
eureka.instance.instance-id= ${spring.cloud.client.ip-address}:${server.port}

# client间隔多久去拉取服务注册信息,默认为30秒
eureka.client.registry-fetch-interval-seconds=30
# 表示eureka client发送心跳给server端的频率,默认30秒
eureka.instance.lease-renewal-interval-in-seconds=30

启动后,打开我们配置的地址,我这里是:http://localhost:10001/
在这里插入图片描述

二、高可用Eureka

eureka的服务的高可用就是多个实例相互注册

在这里插入图片描述

我们如上步骤创建一个eureka2
配置的如下的配置


server.port=10002
spring.application.name=eureka2
# 注册服务地址
eureka.client.service-url.defaultZone = http://localhost:10001/eureka/
eureka.instance.hostname=${spring.application.name}

# 显示ip地址
eureka.instance.ip-address=true

# 是否开启自我保护机制
eureka.server.enable-self-preservation=false

# server清理无效节点的时间间隔,默认60000毫秒,即60秒
eureka.server.eviction-interval-timer-in-ms= 60000

eureka.client.service-url.defaultZone 配置对方的地址

运行后启动,不管打开http://localhost:10001/,http://localhost:10002/,都能出现如下页面

在这里插入图片描述

注册的服务配置的注册的地址2个写上2个,以逗号隔开

# 注册服务地址
eureka.client.service-url.defaultZone = http://localhost:10001/eureka/,http://localhost:10002/eureka/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值