(以上数据来自Dzone)
观察
- 重试、故障转移和数据库快照——已经是较为古老的技术,但有明显的改善效果,甚⾄可能是开发规范、团队制度的一部分。
- 断路器、基于队列的负载均衡和客户端限流在架构上更复杂,因为涉及非线性流程,开发人员需要对整体的系统架构进行思考和设计
- 队列的负载均衡只是一种面向服务的缓冲区
- 客户端限流就像告诉一个网络请求动作要慢下来,在实践中可以成为更复杂的机制,因为它需要对提供者和消费者之间的速率参数进行管理
- 以Java为主的开发⼈员对比其他语言也更有可能实施退避(33.6% 对 18.2%),这可能是因为Web应用后端一般都是Java开发的,前端的开发语言比较混杂(非Java的较多),且前端发起网络请求的上下文较为复杂(用户连续点击、app本身bug、恶意脚本)