[Dzone社区调查]技术方案:自我修复技术

70 阅读1分钟

image.png (以上数据来自Dzone)

观察

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