美文网首页
服务超时总结

服务超时总结

作者: 凯文不上班 | 来源:发表于2019-08-20 16:25 被阅读0次

介绍

超时
  • 请求超时,客户端给服务端发送请求时超时,此时服务端没有收到客户端的请求;
  • 服务端内部超时,服务端可能存在DB操作、IO操作、调用其他服务超时;
  • 响应超时,服务端给客户端返回响应时超时,此时服务端已经处理了请求。

超时发生需要客户端和服务端如何处理呢?
客户端最常见方法:

  • 重试(前提是服务端接口支持幂等),重试间隔梯度增大,重试次数阈值最大值
  • 不重试直接去查询请求结果状态,根据结果确认是否请求成功,或者什么都不处理,直接认为失败不做进一步处理
  • 具体接口场景具体对待

服务端:

  • 服务端内部如果超时了,应该尽快给客户端返回,告诉客户端超时失败,这个主要是通过服务端内部超时控制来实现,例如:golang http.TimeoutHandler

幂等性

支持接口无限重试主要靠的就是幂等性,实现幂等一般采用流水号机制,相同请求使用同一流水号,流水号的生成要保证全局唯一,有一些算法可以实现,比如snowflake算法,接口处理过的请求流水号需要把流水号存储起来,后续相同流水号请求直接返回已处理,一般将流水号直接放到redis中存储,同时,这种幂等性判断,可以从接口移动到网关中,由网关统一处理,接口开发不需要关注幂等性处理,就像service mesh一样,将通用的一些处理下沉到网关统一处理

引用

相关文章

  • 服务超时总结

    介绍 请求超时,客户端给服务端发送请求时超时,此时服务端没有收到客户端的请求; 服务端内部超时,服务端可能存在DB...

  • 请求超时

    请求超时分两种:前端超时,服务端超时1.服务端超时:当请求到服务端默认超时时间还是无响应,服务端会自动断开请求2....

  • 常见的http请求错误

    500:服务错误 比如:服务超时,退出登录》重启服务》重启web 401:登录超时 404错误:页面丢失,路径错误...

  • OpenFegin超时控制

    OpenFegin超时控制 消费者去调用微服务提供方,肯定会出现超时 测试超时 一、修改服务提供者 Control...

  • Socket的函数解析

    //客户端socket在接收数据时,有两种超时:1.连接服务器超时,即连接超时;2.连接服务器成功后,接收服务器数...

  • 服务发布与引用的实践-极客服务第11章

    服务预发布实践 服务发布预定义配置 服务调用应该配置超时机制。还有超时的次数尝试。这些内容最好放在服务发布的配置文...

  • dubbo异常超时分析

    环境:java8 dubbo2.8.4 现象:a服务调用b服务,设置调用超时10s,偶尔会出现调用超时,但...

  • SpringCloud学习笔记(六)-Zuul及Feign的超时

    上图中T1指网关转发请求到服务A时,总共的超时时间。T2指服务A调用服务B的超时时间,如果服务是采用Feign,则...

  • HTTP请求时connectionRequestTimeout

    在很多请求第三方服务的服务器的客户端连接中,我们看到各种超时连接的字眼,这里面总结了一下。 connectionR...

  • 请求超时

    请求超时 网络不好,浏览器连接服务器超过5s 响应超时 连接服务器,url参数直接提交到服务器 body类型的参数...

网友评论

      本文标题:服务超时总结

      本文链接:https://www.haomeiwen.com/subject/sbvpsctx.html