说一个使用okhttp的理由

当时公司为了让接入网关变的简单,于是就开发了一个client,然后给各个服务去使用。

有一次发送请求的时候,发现报timeout了,但实际上业务已经执行成功了。于是就去追代码,发现使用的尽然是hutool包的工具,那个真是糊涂呀

看代码发现没有指定timeout的参数就使用了默认参数 -1

因为使用jdk的URLConnection

hutool用的是JDK自带的URLConnection,这个是可以指定参数的。如果不指定参数,对于那些调用较为耗时的请求就会一直等待。

hutool调用存在的问题

基本要求

  1. 超时时间不设置,如果突然网络出现问题,就会一直卡在这。没有超时控制不行。
  2. 每次请求都建立连接,请求完成以后销毁连接。建立连接是很消耗资源的。
    合理的要求
  3. 连接复用,要有连接池吧
  4. 请求拦截器中统一做点功能是可以的吧
  5. 要是还能异步就完美了

你需要的okhttp都有

https://square.github.io/okhttp/features/connections/

来源链接:https://www.cnblogs.com/euler-blog/p/18614855

© 版权声明
THE END
支持一下吧
点赞12 分享
评论 抢沙发
头像
请文明发言!
提交
头像

昵称

取消
昵称表情代码

    暂无评论内容