架构师训练营第 11 周课后作业
引起系统故障的原因:
硬件原因:主要是指基础设施故障
软件原因:主要包括软件 bug、并发阻塞、黑客攻击等。
外部原因:主要指不可控因素。
保障系统高可用的方案。
架构方案
解耦
从部署上将不同的子系统分离开,减小故障的影响范围。
异步
使用异步处理的方式,避免由于网络性能的原因带来的系统不可用。
备份
使用集群化部署,避免单点故障。
幂等
保证重复调用情况下,结果一样。在分布式事务中,使用逆操作的方式,实现事务补偿。
熔断、限流
当某个服务出现故障时阻断对该服务的调用。为了避免系统被压垮,需要对部分请求进行限制。
运维方案
使用预发布服务器的方式,进行生产预先验证,后进行版本同步
监控
通过监控的方式,发现问题,及时处理
评论