Spring Cloud 学习笔记(二)– eureka

上一篇介绍了spring boot,这次主要介绍spring cloud微服务的服务注册中心eureka,当然spring cloud也对zookeeper进行了支持。

同样eureka也是基于spring boot的基本配置文件和普通的spring boot应用一样,主要是地址的配置需要注意下:

# 与Eureka Server交互的地址,查询服务和注册服务都需要依赖这个地址。默认是http://localhost:8761/eureka ;多个地址可使用 , 分隔
eureka.client.serviceUrl.defaultZone=http://${spring.application.name}:${server.port}/eureka/

同时也可启用注册中心的密码认证:

# 注册中心启用密码 服务注册到注册中心也需要添加密码:http://root:admin@localhost:9090/eureka/
security.basic.enabled=true
security.user.name=root
security.user.password=admin

当然普通spring boot也可启用不过访问就要带密码了。

注册中心启动类配置:

@EnableEurekaServer
@SpringBootApplication
public class RegistryApplication {

    public static void main(String[] args) {

        SpringApplication.run( RegistryApplication.class, args );

    }

}

EnableEurekaServer注解标明该应用是spring cloud注册中心,启动后即可访问注册中心。
eureka有着自我保护机制,当服务挂掉后不会马上剔除该服务而是等待其自动恢复,如果没有恢复则会提示:
EMERGENCY! EUREKA MAY BE INCORRECTLY CLAIMING INSTANCES ARE UP WHEN THEY’RE NOT.
RENEWALS ARE LESSER THAN THRESHOLD AND HENCE THE INSTANCES ARE NOT BEING EXPIRED JUST TO BE SAFE.
自然也可以关闭这个东西,并且设置注册中心清理无效服务的间隔时间:

eureka.server.enable-self-preservation=false
# 清理已关停服务间隔(单位毫秒,默认是60*1000)
eureka.server.eviction-interval-timer-in-ms=60000

默认自我保护是开启的。

具体开发过程中,debug的时候其实都是直接在ide里面直接结束掉服务的,这时注册中心就会提示上面的错误,但如果是优雅停机的话是不会提示的:

# restart
endpoints.restart.enabled=true
endpoints.restart.sensitive=false
# shutdown
endpoints.shutdown.enabled=true
endpoints.shutdown.sensitive=false
# refresh
endpoints.refresh.enabled=true
endpoints.refresh.sensitive=false

sensitive是否启用密码(用的是spring security),默认开启,这样通过http请求即可进行优雅停机和重启以及刷新。

  
BugHome版权所有丨转载请注明出处:https://minei.me/archives/216.html
  

One comment

发表评论

电子邮件地址不会被公开。 必填项已用*标注