数据密集型应用系统设计2021-8-29
数据密集型应用系统模块:
- 数据库
- 高速缓存
- 索引
- 流处理
- 批处理
大多软件系统的三个重要问题:
- 可靠性
- 可扩展性
- 可维护性
可靠性的典型期望:
- 执行用户期望的功能
- 容忍用户不正确的操作和错误
- 性能可以应对典型场景,负载压力和数据量
- 防止任何未授权的访问和滥用
硬件故障类型:
硬盘平均无故障时间MTTF 10~50 年, 因此在一个10000个硬盘的阵列中,平均每天会有一个硬盘故障, 解决的办法是增加硬件冗余。其他硬件故障包括:断电,断网,内存故障,cpu计算错误
软件错误:
more test please
如何减少人为的失误:
- 以最小出错的方式来设计系统,例如精心设计的抽象层,api和管理界面。是的做正确的事很轻松而搞坏东西很复杂
- 分离容易出错的部分,提供测试沙箱
- test
- 当出现人为错误时,提供快速的恢复机制
- telemetry
- 管理流程以及培训
End at page 18
Published on
Author: Li Zihan