案例分析答题测试-1
20+15+10=45
第一道题
问题1
问题2
系统架构风险点:m
敏感点:e
权衡点:i
问题3
可用性:主动冗余、被动冗余、心跳机制
安全性:限制访问、用户认证、追踪审计
性能:并发设计、资源调度
可修改性:模块化、抽象、信息隐藏
第二道题
问题1
问题2
Memcache和redis都是nosql数据库的代表,其中数据类型方面,redis支持类型更多,不仅支持string基本数据类型,还支持更加复杂的类型:list、hash、set、zset。而Memcache支持的类型相对较少,而且不支持list、set这样的复杂类型。持久化方面,redis提供了两种方案:AOF策略和RDB策略。其中两个策略的关注点不同,一个关注的是执行过的命令,另外一个关注的是当前存储的数据。而memcache没有提供持久化的能力支持。分布式存储方面,redis官方提供了cluster模式和哨兵模式供开发者选择,而且也提供了相应的实现工具。
第三道题
问题1
微服务架构的关注点是服务,将各个独立的模块封装成服务,并且通过通信协议支持在不同的服务之间相互访问。 优点是:
- 系统之间的松耦合,而且独立封装的微服务又满足高内聚
- 弹性伸缩,可以根据业务量灵活的增减提供服务的数量
- 每个服务都很小,利于小团队开发
- 语言不受限制,允许不同的团队根据擅长的技术栈开发 缺点是:
- 架构过重,而且部署困难
- 测试困难
- 很难在不使用分布式事务的前提下实现功能
- 对团队协作能力有很高的要求
问题2
问题3
- 统一管理认证、校验、节流、监控等相关的公共模块
- 更加灵活的管理不同的微服务
- 只暴露出一个服务提供入口供服务消费方访问
- 服务降级
- 数据缓存