Tags consul docker microservice
2016-02-27 20:31:14
NGINX->REST API Gateway -> Microservice -> database
首先来自后端开发人员提供的服务返回信息。微服务的内容无法访问,查看日志没有分析出来具体出错位置,第一感觉是部分微服务的问题。所以去查看微服务的日志发现并没有问题。才意识到所有的微服务无法连接。检查速度过慢的原因如下:
1. 不敢轻易重启服务怕就起不来,造成更大面积的报错
2. GRPC 的微服务重连时间步长是逐渐边变长的,我盯着日志几分钟不可能看出来关键问题在哪里。
3. 很长时间才反应过来应该自己做抓日志做测试。
4. 几个HTTP测试的结果来自Gateway不是微服务,耽误了不少分析时间。
当我发现这个问题的时候已经大概使用了2个小时的时间,非常紧张,当时我就想着解决问题本身了。但是我这么做事错的。我应该想办法以最快的速度来让服务恢复。而不是尝试Fix来自上游的bug。 经过ISSUE的提示我马上使用了HTTPGet的方法来获取。所有的微服务的地址。到时候想办法再切换回来使用dns做服务发现,毕竟有自己的NS服务器比较方便。