架构师训练营 - 命题作业 第 11 周
导致系统不可用的原因有哪些?保障系统稳定高可用的方案有哪些?请分别列举并简述。
不可用的原因:软件故障、硬件故障、机房故障、地理灾害等。
高可用方案需要做分类:
高可用存储架构有双机架构,主备复制、主从复制、主主复制,以及针对主备和主从的双击切换。
高可用存储架构还有集群和分区手段,数据集中集群有1主多备或者1主多从,结合ZK做分布式选举;数据分散集群有Hadoop的数据分区管理架构,Elasticsearch的数据分片。数据分区用来应对地理级别的故障,可设置不同的分区规则。
高可用计算架构也有主备、主从和集群。其中负载均衡集群要注意选取分配策略、检测服务器状态。非
对称集群要注意将任务要划分为不同类型并分配给不同角色的集群节点,角色分配策略涉及分布式选举算法。
业务高可用的保障有异地多活架构,包括同城异区、跨城异地、跨国异地,延时递增,有不同的数据同步策略。
应付接口级的故障,保证高可用的手段有:降级、熔断、限流、排队等。
请用你熟悉的编程语言写一个用户密码验证函数,Boolean checkPW(String 用户 ID,String 密码明文,String 密码密文)返回密码是否正确 boolean 值,密码加密算法使用你认为合适的加密算法。
版权声明: 本文为 InfoQ 作者【铁血杰克】的原创文章。
原文链接:【http://xie.infoq.cn/article/238108e459fb45af618843e9b】。未经作者许可,禁止转载。
评论