00. 设计原则
理解高可用
高可用是一个具体而又抽象的名词,谈及此我们会联想到用户随时随地访问系统即可得到预期的响应。
- 安全:内部的操作失误,外部的安全威胁 机密,完整,可用
- 可靠:各种黑天鹅事件 能够应对故障,提供冗余,便于运维
- 扩展:高并发峰值应对 可理解
高可用的挑战
- 不可靠的系统:在《DistributedSystem-Notes》中我们详细讨论过不可靠的分布式系统。
- 高并发:
- 复杂性:
- 隐蔽性:
- 其他威胁:安全攻击,
代价
实现高可用系统并不是无代价的。
Run cost as architecture fitness function
对于今天的组织来说,自动化评估、跟踪和预测云基础设施的运行成本是必要的。云供应商精明的定价模型,以及基于定价参数的费用激增,再加上现代架构的动态本质,常常导致让人吃惊的运行成本。例如,无服务架构基于
Links
2021-21 大软件架构特点的全面解析: 我们从业务需求(业务特征) 、我们期望的系统运营方式(运营特征)中总结出这些特点,它们是隐式的、贯穿各领域,是架构师在字里行间能看出来的特点。