写点什么

架构师训练营第十一周作业

用户头像
竹森先生
关注
发布于: 2020 年 08 月 26 日

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

DNS被劫持、CDN挂掉、服务器宕机、交换机失效、硬盘损坏、网卡松动、机房停电、程序bug、黑客攻击、大量访问、第三方服务失效等等

高可用方案包括

高可用应用

通过负载均衡进行无状态服务的失效转移

应用服务器集群的session管理

高可用服务

分级管理

超时设置

异步调用

服务降级

幂等性设计

高可用数据

数据备份

失效转移

高可用软件质量保证

无感发布

自动化测试

预发布验证

版本控制

灰度发布

网站运行监控

监控数据采集

监控管理



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

Boolean checkPW (String userId, String pwd, String secPwd) {
String mysign = DigestUtils.md5Hex(getContentBytes(pwd, "utf-8"));
return mysign.equalsIgnoreCase(secPwd);
}
private static byte[] getContentBytes(String content, String charset) {
if (charset == null || "".equals(charset)) {
return content.getBytes();
}
try {
return content.getBytes(charset);
} catch (UnsupportedEncodingException e) {
return new byte[0];
}
}



发布于: 2020 年 08 月 26 日阅读数: 48
用户头像

竹森先生

关注

还未添加个人签名 2020.03.26 加入

还未添加个人简介

评论

发布
暂无评论
架构师训练营第十一周作业