写点什么

架構師訓練營 week11 作業

用户头像
ilake
关注
发布于: 2020 年 12 月 06 日

1. 导致系统不可用的原因有哪些?保障系统稳定高可用的方案有哪些?请分别列举并简述。


导致系统不可用的原因有哪些:

  1. 硬體故障

  2. 軟體 bug

  3. 系統發佈

  4. 併發壓力

  5. 網路攻擊

  6. 外部災害


保障系统稳定高可用的方案有哪些:

  • 解耦

  • 高內聚、低耦合的組件設計原則

  • 面相對象基本設計原則

  • 面相對象設計模式

  • 領域驅動建模

  • 隔離

  • 業務與子系統隔離

  • 維服務與中台架構

  • 生產者消費者隔離

  • 虛擬機與容器隔離

  • 異步

  • multi-thread

  • async

  • event-driven

  • 備份

  • Failover

  • 冪等

  • 事務補償

  • Retry

  • 熔斷

  • 限流

  • 降級

  • 異地多活


2. 请用你熟悉的编程语言写一个用户密码验证函数,Boolean checkPW(String 用户 ID,String 密码明文,String 密码密文),返回密码是否正确 boolean 值,密码加密算法使用你认为合适的加密算法。

def check_pw(user_id, pwd, encrypt_pwd)  return false unless encrypt_pwd == Digest::MD5.hexdigest(pwd)    user = User.find(user_id)  user.password == encrypt_pwdend
复制代码


用户头像

ilake

关注

还未添加个人签名 2019.04.15 加入

还未添加个人简介

评论

发布
暂无评论
架構師訓練營 week11 作業