关于 OkHttp 请求延迟阻塞现象的解决记录

近期现场的设备出现了 loading 弹出异常的问题,通过排查日志,发现出现了很怪异的现象。

  • 网络请求前的日志正常打印,网络请求拦截器中的日志延迟很久才打印,最多有13分钟之后才打印网络请求。
  • 查服务器端日志,发现服务器也是13分钟之后接到的网络请求
  • 怀疑是线程阻塞或者机器卡住,对多项并行操作增加线程池管理之后问题仍然出现。
  • 查阅日志,在网络请求被延迟的这段时间,socket 正常。

最后通过查阅资料与源码,发现如果配置的 Dns 服务异常,会因为 okhttp 解析导致的网络请求延迟,而该代码在请求连接池之前,所以拦截器中的日志也没有执行。

更换Dns即可

你可能感兴趣的:(关于 OkHttp 请求延迟阻塞现象的解决记录)