高可用系统架构
- 资源隔离
让你的系统,某一块东西,在故障的情况下,不会耗尽所有的资源,比如线程资源。 - 限流
高并发的流量涌入进来,比如说突然间一秒钟100万QPS,废掉了,10万QPS进入系统,其他90万QPS被拒绝了 - 熔断
系统后端的一些依赖,出了一些故障,比如mysql挂掉了,每次请求都是报错的,熔断了,后续的请求过来直接不接收了,拒绝访问,10分钟之后再尝试去看看mysql恢复没有 - 降级
mysql挂了,系统发现了,自动降级,从内存里存的少量数据中,去提取一些数据出来 - 运维监控
监控+报警+优化,各种异常的情况,有问题就及时报警,优化一些系统的配置和参数,或者代码。