Week_11 作业

用户头像
golangboy
关注
发布于: 2020 年 12 月 07 日

导致系统不可用的原因有哪些?保障系统稳定高可用的方案有哪些?请分别列举并简述。

导致系统故障的原因如下:

  • 硬件故障

  • 软件 bug

  • 系统发布

  • 并发压力

  • 网络攻击

  • 外部灾害

保证系统稳定高可用方案:

  • 解耦:软件层面设计不合理,通过重构的方式使系统解耦,保障服务的可用性

  • 隔离:业务进行隔离,资源进行隔离,防止相互影响,导致问题扩大,产生雪崩效应

  • 异步:事件驱动模型,提升系统响应速度,防止系统在短时间内阻塞大量请求,导致资源耗尽

  • 备份:保障数据安全,服务高可用,当故障发生时,能有备用服务和数据可用

  • Failover(失效转移):略

  • 幂等:服务调用需要幂等,让服务无状态

  • 事务补偿:略

  • 重试:应对网络闪断

  • 熔断:防止在错误发生情况下,造成对后续服务过大的压力

  • 限流:保证系统稳定,防止达到系统处理极限而down机

  • 降级:停掉部分非核心服务,使核心服务可用

  • 异地多活:灾备,保证系统高可用



用户头像

golangboy

关注

还未添加个人签名 2018.09.18 加入

还未添加个人简介

评论

发布
暂无评论
Week_11 作业