-
Notifications
You must be signed in to change notification settings - Fork 0
/
第一章.puml
50 lines (41 loc) · 1.55 KB
/
第一章.puml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
@startmindmap
'https://plantuml.com/mindmap-diagram
caption CHAPTER 1
title 可靠、可扩展性与可维护性的应用系统
* 第一章
** 可靠性-Reliability
*** **容忍硬件、软件失效,人为失误**\nfault-tolerant and resilient
*** 系统下线的首要原因是运维者的配置错误,硬件问题仅占到10%~25%
*** 如何保证可靠性\n假设人是不可靠的
**** 以最小出错的方式来设计系统
**** 功能齐全但非生产用的沙箱环境
**** 充分的测试
***** 混沌测试: Netflix Chaos Monkey Test
***** 从单元测试 -> 全系统功能测试 -> 手动测试 ---> 自动化测试
**** 快速恢复机制减少事故影响
**** 全面的监控系统
**** 推行规范的流程并加以培训
** 可扩展性-Scalability
*** **评测负载与性能,延迟百分数(p99、p50),吞吐量**
*** 系统负载 & 性能
**** 负载增加,系统资源不变,则性能下降
**** 负载增加,如果要保持性能不变,肯定要增加系统资源
*** 应对负载增加的办法
**** 垂直扩展:提高单个实例的性能
**** 水平扩展:将负载分布到多个更小的机器
** 可维护性-Maintainability
*** 可运维性
**** 方便运营团队来保持系统平稳运行
*** 简单性
**** 简化系统复杂度,使新工程师能够轻松理解系统
*** 可演化性
**** 后续工程师能够轻松地对系统进行改进,并根据需求变化将其适配到非典型场景
'header
'My super header7
'endheader
'center footer My super footer
'legend right
' Short
' legend
'endlegend
@endmindmap