演示IPing
提前启动了这些服务
这样IPing就写完了。
重启consumer服务
访问报错。
报错原因就是IPing在起作用,本身就是通过请求访问我们的服务,
这里我们配置的IPing是全局的,所以他不区分服务,不区分服务的情况下呢,它这里访问的就是任何服务的/abc的地址。如果这个url是存活状态,那我就认为你这个服务是活着的。如果url没有存活。那我就认为你这个服务就已经挂掉。 。它就会从upServerList里面去掉。这种情况下upServerList本身就是空的。自然返回的就是no available Service
参数1:是不是安全的链接,也就是http和http是的区别。
参数2:是要ping的url
一般来讲我们每个服务,为了内部探活,觉大多数都暴露一个存活状态的这么一个心跳的服务。
往下看代码,这里就是判断http和https
这个依赖于eureka自身的判断。eureka判断它是存活的,那么它就是存活的。
重启consumer服务。来演示下。
eurekaClient认为它是存活的,所以访问也是存活的。
如果想自定义Iping就是继承这个
最主要的是实现IsAlive方法
如果需要LoadBalancer的东西,拿着这个直接就可以用。
遗留问题
这个配置文件里,为什么这么写,有什么样的作用?