B站高可用架构总结

原文链接:https://mp.weixin.qq.com/s/3NUd4jObuTKqlhUr-eKvhA

一、负载均衡

1.1 前端服务器的负载均衡

  使用DNS把用户流量引到边缘节点,比如在广东的用户会接入到广州、佛山的机房,然后再分发到上海核心机房,走更好的网络通信。

1.2 数据中心内部的负载均衡

  负载均衡算法如果不好,有些节点负载会特别高,有些会特别低。节点之间需要保持心跳。(有很多负载均衡算法)

 

二、限流

  系统某部分总会过载,优先考虑降级。客户端测截流:某个用户超过资源配额时,后端任务会快速拒绝请求,返回“配额不足”的错误。有可能后端忙着不停发送拒绝请求,导致过载。过载保护:过载保护核心目标在服务过载时,通过丢弃一定的流量,保证系统临近过载时的峰值流量,已求自保护。

 

三、重试

  限制重试次数和基于重试分布的策略(重试比率:10%)。只应该在失败的这层进行重试。客户端限速:用户总是积极重试,访问一个不可达的服务。

 

四、超时

  超时是一种Fail Fast策略。跨进程超时控制。

 

五、应对连锁故障

  避免过载、优雅降级、重试退避、超时控制、变更管理、极限压测 + 故障演练、扩容 + 重启 + 消除有害流量

B站高可用架构总结

上一篇:协程初用


下一篇:echo $? 背后的原理