我试图从我的应用程序访问Rest API。当该API不在线时,我的应用程序发生上述错误。我正在使用弹簧靴。我想知道,有没有办法在访问URL之前检查其可用性。
String URL = "http://172.17.42.1:4001/v2/keys" + key + "/running";
instance = restTemplate.getForObject(URL, Instance.class);
答案 0 :(得分:1)
要知道服务的可用性,您必须单击URL,没有其他方法。
但是,spring-cloud-netflix-hystrix是为处理此类问题而构建的。
Netflix的Hystrix库提供了Circuit的实现 断路器模式:将断路器应用于方法时,Hystrix 监视对该方法的调用失败,以及是否失败累积到 一个阈值,Hystrix断开电路,以便后续调用 自动失败。电路断开时,Hystrix重定向呼叫 方法,然后将它们传递到我们指定的后备方法
有很多材料可供学习。