SpringCloud 使用EurekaClient
2023-11-22 10:54 更新
一旦拥有作为发现客户端的应用程序,就可以使用它从Eureka服务器发现服务实例。一种方法是使用本地com.netflix.discovery.EurekaClient
(而不是Spring Cloud DiscoveryClient
),如以下示例所示:
@Autowired private EurekaClient discoveryClient; public String serviceUrl() { InstanceInfo instance = discoveryClient.getNextServerFromEureka("STORES", false); return instance.getHomePageUrl(); }
请勿在
@PostConstruct
方法或@Scheduled
方法(或可能尚未启动ApplicationContext
的任何地方)中使用EurekaClient
。它是通过SmartLifecycle
(带有phase=0
)进行初始化的,因此最早可以依靠它的是处于更高阶段的另一个SmartLifecycle
。
以上内容是否对您有帮助:
更多建议: