eureka-client 相关配置

本章主要讲解spring-cloud-eureka-client 配置相关

1. eureka.client.region

eureka.client.region=aliyun

client 根据该值从获取可用的zones,如果不配置,默认为us-east-1,取不到会默认为defaultZone, 是不是很有映象,会为什么serviceUrl要配置为defaultZone

public String[] getAvailabilityZones(String region) {
    String value = (String)this.availabilityZones.get(region);
    if (value == null) {
        value = "defaultZone";
    }

    return value.split(",");
}

2. eureka.client.availability.zones

eureka.client.availability.zones.aliyun=sz1,sz2

MAP类型,配置region下可用的zones,多个zone逗号分隔,这里顺序很重要,系统会按照配置的顺序优先从前面的URL开始加载

3. eureka.client.serviceUrl

eureka.client.serviceUrl.sz1=http://127.0.0.1:8080/eureka/

配置获取应用注册的服务器地址,多个逗号分隔

public List getEurekaServerServiceUrls(String myZone) {
    String serviceUrls = (String)this.serviceUrl.get(myZone);
    if (serviceUrls == null || serviceUrls.isEmpty()) {
        serviceUrls = (String)this.serviceUrl.get("defaultZone");
    }

    if (!StringUtils.isEmpty(serviceUrls)) {
        String[] serviceUrlsSplit = StringUtils.commaDelimitedListToStringArray(serviceUrls);
        List eurekaServiceUrls = new ArrayList(serviceUrlsSplit.length);
        String[] var5 = serviceUrlsSplit;
        int var6 = serviceUrlsSplit.length;

        for(int var7 = 0; var7 < var6; ++var7) {
            String eurekaServiceUrl = var5[var7];
            if (!this.endsWithSlash(eurekaServiceUrl)) {
                eurekaServiceUrl = eurekaServiceUrl + "/";
            }

            eurekaServiceUrls.add(eurekaServiceUrl);
        }

        return eurekaServiceUrls;
    } else {
        return new ArrayList();
    }
}

4. eureka.client.registry-fetch-interval-seconds

eureka.client.registry-fetch-interval-seconds=2

每隔2秒从服务端获取最新的注册信息,如果获取超时,第二次获取时间会翻倍

5. eureka.client.register.with.eureka

eureka.client.egister.with.eureka=true

是否需要向服务端进行注册,如果只获取不注册,设置为false

6. eureka.client.fetch-remote-regions-registry

eureka.client.fetch-remote-regions-registry=aliyun

从服务端指定的region获取注册信息

7. eureka.client.fetch.registry

eureka.client.fetch.registry=true

是否需要从服务端获取注册信息,服务端如果是集群需要配置为true

8. eureka.client.instance-info-replication-interval-seconds

eureka.client.instance-info-replication-interval-seconds=5

每隔5秒扫描一次本地实例,如果有变化向服务重新注册

你可能感兴趣的:(eureka-client 相关配置)