架构师训练营第 1 期 - 第 11 周 - 命题作业
(至少完成一个)
导致系统不可用的原因有哪些?保障系统稳定高可用的方案有哪些?请分别列举并简述。
请用你熟悉的编程语言写一个用户密码验证函数,Boolean checkPW(String 用户 ID,String 密码明文,String 密码密文),返回密码是否正确 boolean 值,密码加密算法使用你认为合适的加密算法。
导致系统不可用的原因:
硬件故障;软件Bug;系统发布;并发压力;网络攻击;外部灾害。
保障系统稳定高可用的方案:
分3个层次:1.架构设计:
解耦;隔离;异步;备份;Failover(失效转移);幂等;事务补偿;重试;熔断;限流;自适应限流;降级;异地多活;
2.系统运维:
自动化测试;自动化部署;预发布验证;灰度发布;运行监控(用户行为日志,业务运运行数据和系统性能数据)
3.系统故障分析:
根据故障描述分析
【系统配置(系统负荷能力)
应用服务本身:
技术(系统)数据分析(CPU,数据库,JVM,缓存,并发量,线程数,请求响应时间,架构设计)
业务数据分析(业务流程,业务数据高峰时段)】
版权声明: 本文为 InfoQ 作者【wgl】的原创文章。
原文链接:【http://xie.infoq.cn/article/0a1f5f84ab57126a352a7f7fc】。未经作者许可,禁止转载。
评论