亿级流量网站架构核心技术 第六章 超时与重试机制
代理层超时与重试
nginx等,设置代理与真实服务器之间的网络连接/读/写超时时间
1 客户端超时设置
读取请求头超时时间,读取请求体超时时间,发送响应超时时间,长连接超时时间
2 DNS解析超时设置
3 代理超时设置
web容器超时:tomcat,jetty等,设置容器与客户端,默认socket的网络连接/读/写超时时间
中间件客户端超时与重试
数据库客户端超时
NoSQL客户端超时
业务超时
前端Ajax超时
通过配置合理的超时时间,防止出现某服务的依赖服务超时时间太长且响应慢,导致自己响应慢甚至崩溃
通常上游设计超时时间应该更长
超时之后,有重试,摘掉不存活节点,托底,等待页或者错误页
非幂等写服务应避免重试,可以考虑生成唯一流水号来保证写服务幂等
中间件优先考虑心跳/存活检查,而不是惰性检查

浙公网安备 33010602011771号