Spring Cloud - Discovery - Eureka

Eureka

Eureka 是 Netflix 的服务注册组件。
Eureka 分为 Eureka Client 和 Eureka Server 两部分。

Eureka Client

  • 使用 org.springframework.cloud:spring-cloud-starter-netflix-eureka-client 引入 Eureka Client。
  • application.properties 中配置 Eureka。
spring.application.name=store

# Eureka服务地址
eureka.client.service-url.defaultZone=http://localhost:8110/eureka/
  • 启动类使用 @EnableEurekaClient 配置启用 Eureka Client。
  • 使用 EurekaClient bean 获取服务。
@Service
public class OrderService {
    @Resource
    private EurekaClient eurekaClient;
    
    public void order(String goodCode) {
        // 扣库存
        InstanceInfo storeInstanceInfo = eurekaClient.getNextServerFromEureka("store", false);
        String storeUrl = storeInstanceInfo.getHomePageUrl();
        // dosth....
    }
}

Eureka Server

如何引入 ?
  • 使用 org.springframework.cloud:spring-cloud-starter-netflix-eureka-server 引入 Eureka Server。
  • application.properties 中配置 Eureka Server。
server.port=8110

# 是否注册到Eureka
eureka.client.register-with-eureka=false
# 是否从Eureka获取注册信息
eureka.client.fetch-registry=false
# Eureka服务地址
eureka.client.service-url.defaultZone=http://localhost:8110/eureka/
  • 启动类使用 @EnableEurekaServer 配置启用 Eureka Server。
集群
  • application.propeties 配置 eureka.client.service-url.defaultZone${peer1Url},${peer2Url},${peer3Url},例如http://peer1:8111/eureka/,http://peer2:8112/eureka/,http://peer3:8113/eureka/

注意peer1peer2peer3配置在了hosts文件中,指向127.0.0.1

  • eureka.instance.hostname 配置主机名,指定集群中peer的名称。
  • eureka.client.register-with-eureka 配置为 true 可显示哪个peer可用。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值