写点什么

十一周作业

用户头像
Linuxer
关注
发布于: 2020 年 08 月 25 日
  • 导致系统不可用的原因有哪些?保障系统稳定高可用的方案有哪些?请分别列举并简述。

导致系统不可用的原因有: 硬件故障、软件bug、系统发布、并发压力、网络攻击、外部灾害

解耦: 高内聚、低耦合的组件设计原则,面向对象基本设计原则、面向对象设计模式、领域驱动设计建模

隔离:业务与子系统隔离、微服务与中台架构、生产者消费者隔离、虚拟机与容器隔离

异步: 多线程编程、反应式编程、异步通信网络编程、事件驱动异步架构

备份:集群设计、数据库复制( CAP原理)

Failover(失效转移):数据库主主失效转移、负载均衡失效转移、设计无状态的服务

幂等、事务补偿、重试、熔断、限流、降级、异地多活



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

public static checkPW(String userId, String password, String encryPassword){

StringBuilder builder = new StringBuilder();

builder.append(userId) ;

builder.append(password) ;

MessageDigest messageDigest = MessageDigest.getInstance("SHA") ;

messageDigest.update( builder.toString().getBytes()) ;

BigInteger sha = new BigInteger(messageDigest.digest()) ;

if (sha.toString().equals(encryPassword)){

return  true;

}else{

return false ;

}

}

用户头像

Linuxer

关注

还未添加个人签名 2018.06.12 加入

还未添加个人简介

评论

发布
暂无评论
十一周作业