系统架构之高可用
什么是高可用
系统的高可用,是指系统运行稳定的能力,遇到冲击时,也能正常工作。
如何落地
-
监控预警
全方位的立体化监控和预警机制,可以帮助我们快速地定位问题,监控系统运行状况,提前做好准备工作。
-
失效转移
当某个服务失效或出现宕机时,系统可以自动将请求转移到可用的服务上去,这种机制的前提是做好冗余和备份。
- 限流降级
限流是提前设置好请求的QPS阀值,当请求量超过阀值时,则拒绝处理及后续资源请求,直接返回或按预设处理。
降级是在服务器压力剧增的情况下,把与核心业务无关的外围服务做降级处理,节省系统资源占用,保证核心业务的性能和稳定。降级策略包括超时降级、失败次数降级、故障降级。
- 熔断隔离
当系统链路中某个微服务出现不可用或者响应时间太长时,系统会自动熔断该节点微服务的调用,快速返回错误信息。当检测到该节点微服务调用响应正常后,系统可自动恢复该微服务的调用。
-
应急预案
上线前做好应急预案,可以避免上线后,出现问题时的手足无措。
-
结构清晰
层次分明且结构清晰的系统架构,一定会助力系统稳定性,为系统稳定打下坚实的基础。
-
规范管理
遵循规律才能事半功倍,并收到好的成效。代码质量规范、数据库使用规范、程序执行性能注意事项、接口规范、设计文档、流程规范、例会制度等,这些都是研发中需要遵守的规则和规律。
-
安全防范
在系统安全生产上做足功课,也会为系统稳定性作出贡献。