第 11 周 安全和高可用

用户头像
陆不得
关注
发布于: 2020 年 08 月 26 日

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

1、网络问题:地址不可达,带宽跑满。

方案:cdn加速,dns 加速,带宽扩容等

2、服务器问题:机器故障,负载高。

方案:负载均衡,机器扩容等。

3、业务组件问题:并发高响应慢。

方案:业务优化,异步响应,水平扩容等

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

package main
import (
"crypto/md5"
"encoding/hex"
"fmt"
"io"
)
func checkPW(id string, pwd string, token string) bool {
h := md5.New()
salt := "xxx"
io.WriteString(h, id)
io.WriteString(h, pwd)
io.WriteString(h, salt)
pwdToken := hex.EncodeToString(h.Sum(nil))
return pwdToken == token
}
func main() {
rs := checkPW("1", "abc", "667a8839ee2a5e458d26391c0c0eb2e3")
fmt.Println(rs)
}



用户头像

陆不得

关注

还未添加个人签名 2017.12.14 加入

还未添加个人简介

评论

发布
暂无评论
第11周 安全和高可用