动态更新Eureka实例元数据

时间:2017-04-04 10:27:31

标签: spring-cloud netflix-eureka spring-cloud-netflix

当Spring Cloud Eureka实例启动时,我可以静态定义一些实例元数据(在eureka.instance.metadataMap.*中的application.yml中)或动态定义(例如,使用EurekaInstanceConfigBean)。但是一旦注册了实例,在更新配置bean之后,这个元数据就不再在Eureka中更新了。 有没有办法定义一些将在Eureka中动态更新的元数据?因此,Eureka的工作方式类似于每个实例的键值存储。

1 个答案:

答案 0 :(得分:7)

如果您想更新eureka客户端中的任何元数据,请使用com.netflix.appinfo.ApplicationInfoManager对象并致电registerAppMetadata(Map<String, String>)。 如果是这样,此信息将在Eureka Server中更新,通常很快或至少在30秒内更新。您可以使用DI获取ApplicationInfoManger的实例。

如果要更新其他服务实例的元数据,只需调用以下REST API到eureka服务器即可。

PUT /eureka/apps/appID/instanceID/metadata?key=value
相关问题