如標題意思,我們在實際使用中,某個服務已經停止運行(關閉),eureka注冊中心 還是會有該項服務的注冊信息,因為eureka默認是開啟自動保護,那我們不想使用這些功能,又不想手動去剔除或重啟注冊中心,那么,我們需要修改一下配置即可。修改項見如下:
1. Eureka注冊應用配置,application.properties修改如:
# 關閉自我保護,服務關閉后從列表中踢除,默認true,開啟自我保護 eureka.server.enable-self-preservation=false # 清理間隔(單位毫秒,默認是60*1000) eureka.server.eviction-interval-timer-in-ms=60000
2. Client端 或 Provider端 應用配置,application.properties修改如:
eureka.client.healthcheck.enabled=true//開啟健康檢查(需要spring-boot-starter-actuator依賴) eureka.instance.lease-renewal-interval-in-seconds=10//租期更新時間間隔(默認30秒) eureka.instance.lease-expiration-duration-in-seconds=30//租期到期時間(默認90秒)
PS:yaml文件 對應properties文件,請自行修改。
修改好后,我們啟動項目,先啟動Eureka注冊服務,再啟動Client或Provider端 應用,然后,關閉Client 或 Provider端 應用,等待一段時間后,可以發現注冊中心會自動移除已經停止的應用服務。