原计划目标
了解网关http代理的过程,进行压测。
结果
目标没达成。
过程
今天起了admin和bootstrap,然后起了http example,调用网关代理接口时,发现网关在实际转发到http example时,请求的IP是一个不认识的IP,于是查看下自己的网络配置情况,发现确实有一个网卡(TAP-Windows Adapter V9)对应这个ip,这应该是一个虚拟网卡,不知道PC什么时候多了这个,也很疑惑http example为什么会用这个IP,这个下一步自己再另外了解具体机制。
INFO 34628 --- [-work-threads-2] o.d.s.plugin.httpclient.WebClientPlugin : The request urlPath is http://26.26.26.1:8188/test/findByUserId?userId=1, retryTimes is 0
将该网卡禁用,admin下会打印如下日志,代码中有一个定时任务在定期做服务可用性检查:
ERROR 30872 --- [upstream-task-1] o.d.s.a.s.impl.UpstreamCheckService : check the url=26.26.26.1:8188 is fail
接着再调用网关代理接口,会返回如下结果:
{
"code": -106,
"message": "Can not find url, please check your configuration!",
"data": null
}
根据后端报的异常,对代码进行跟踪追溯,大概了解了网关启动后,admin和bootstrap的配置同步过程,不过有一些响应式编程写法看不太懂,以及一些没用过的工具包,这些也是一个学习点。
然后重启http example,服务会换一个ip,网关的代理功能也恢复正常。