实现性能、可扩展性和可用性目标
1. 实现性能目标
在构建系统时,有诸多因素会影响特定操作的执行时间。其中,算法和数据结构的选择是关键因素之一,为当前问题选用最合适的算法和数据结构至关重要。
而在构建分布式系统时,网络延迟也是必须考虑的重要因素。每个操作的总时长是操作执行时间与请求到达应用程序以及响应返回客户端所需时间的总和。
在某些环境下,延迟极低,可忽略不计。例如,在同一进程内访问对象的属性,其速度等同于内存访问速度(纳秒级),延迟不是问题。但一旦跨机器边界进行调用,物理定律就会产生影响。
以下是一个假设操作实际执行时间为 20 毫秒时,不同服务器位置对延迟的影响示例:
| 位置 | 执行时间 (ms) | 平均延迟 (ms) | 总时间 (ms) | 延迟占总时间的百分比 |
| — | — | — | — | — |
| 本地主机 | 20 | 0.067 | 20.067 | 0.3% |
| 本地主机上运行的虚拟机 | 20 | 0.335 | 20.335 | 1.6% |
| 同一局域网内的服务器 | 20 | 0.924 | 20.924 | 4.4% |
| 美国佛罗里达州坦帕市的服务器 | 20 | 21.378 | 41.378 | 51.7% |
| 美国加利福尼亚州桑尼维尔市的服务器 | 20 | 53.130 | 73.130 | 72.7% |
| 英国伦敦的服务器 | 20 | 126.005 | 146.005 | 86.3% |
| 俄罗斯莫斯科的服务器 | 20 | 181.855 | 201.855 | 90.1% |
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



