架构师训练营 week11 作业
导致系统不可用的原因有哪些?保障系统稳定高可用的方案有哪些?请分别列举并简述
系统不可用的原因
1、硬盘被写满,debug 的 log 日志,检查 log 配置文件.
2、SQL 数据库报警,首页不要访问数据库,推荐的内容应该提前缓冲好。
3、服务器不定时相应超时,单例中多个方法使用修饰符。sycronized 使用不合理
4、数据库不能响应,系统宕机,系统缓冲服务器配置低,疏于管理缓冲数据库服务器。memchaed 数据缓冲服务器全关了,导致机器实效。
5、发布新应用服务器雪崩,Apache 与 JBoss 不协同。
保障系统稳定高可用的方案
解耦合(高内聚低耦合\面向对象设计原则\面向对象设计模式\领域驱动设计)
隔离(业务与子系统隔离\微服务与中台架构\生产者与消费者隔离\虚拟机与容器隔离)
异步(多线程编程\反应式编程\异步通信网络编程\事件驱动异步架构)
备份(集群设计\数据库复制)
实效转移(数据库主主失效转移\负载均衡实效转移)
幂等性\事务补偿\重试\熔断\限流\降级\异地多活
评论