【架构师训练营 - week11 -1】作业
导致系统不可用的原因有哪些?保障系统稳定高可用的方案有哪些?请分别列举并简述。
请用你熟悉的编程语言写一个用户密码验证函数,Boolean checkPW(String 用户 ID,String 密码明文,String 密码密文)返回密码是否正确 boolean 值,密码加密算法使用你认为合适的加密算法。
导致不可用的原因:
硬件故障
软件bug
系统分布
并发压力
网络攻击
外部灾害
保障系统稳定高可用的方案:
1.分级管理
运维上将服务器进行分级管理,核心应用和服务优先使用更好的硬件,在运维响应速度上也格外迅速。
2.超时设置
3.异步调用
应用对服务的调用通过消息队列等异步方式完成,避免一个服务失败导致整个应用请求失败的情况。
4.服务降级
网站访问高峰期,服务可能因为大量的并发调用而性能下降,严重时可能会导致服务宕机。为了保证核心应用和功能的正常运行,需要对服务进行降级。降级有两种手段:拒绝服务及关闭服务。
5.异地多活
如果整个数据中心都不可用了,比如受到了一些不可抗力的影响,为了解决这个问题,可以在不同的地方配置多个数据中心。
6.限流
在高并发场景下,如果系统的访问量超过了系统的承受能力,可以通过限流对系统进行保护。
评论 (1 条评论)