摘要
以下是本模块中有关弹性的一些要点:
- VM 和其他云资源很少遇到恒定的负载。 相反,它们会遇到变化的负载:有时负载会随时间推移呈数量级变化,甚至出现更大的变化。
- 调整计算容量以适应峰值负载可确保服务质量 (QoS),但会导致成本和能耗增加。
- 弹性指添加资源以处理更高负载并在负载下降时删除资源的能力。
- 通过缩放 VM 和数据库等资源,可在云端实现弹性。
- 缩小和横向扩展(水平缩放)指增加和减少专用于某个任务的资源数量。例如,将为网站用户提供服务的 VM 数量从 10 增加到 15。
- 纵向扩展和减少(垂直缩放)指使用功能更强大或更弱小的资源替代现有资源。例如,使用包含 4 个核心和 8 GB RAM 的 Web 服务器 VM 替换包含 2 个核心和 4 GB RAM 的 Web 服务器 VM。
- 缩放资源以适应需求可使资源利用率保持相对稳定、降低成本以及提高能源利用率。
- 自动缩放允许基于云管理员确立的规则或策略进行缩放。 规则或策略可以基于时间、基于指标或同时基于两者。 基于指标的自动缩放的一个示例是在平均 CPU 利用率达到预先确定的阈值(例如 70%)时使其他实例联机。
- 当负载具有周期性并可预测时,基于时间的自动缩放(也称为计划自动缩放)最为合适。
- 基于指标的自动缩放可同时处理可预测和不可预测的负载。
- 有效的负载均衡对于实现可缩放的云服务而言至关重要。
- 负载均衡器使用不同类型的算法来分发负载,包括轮询机制和基于哈希的算法。
- 一些负载均衡器尝试通过使用每个节点上的请求执行时间和 CPU 利用率等指标来更加智能地调度请求。
- 负载均衡器还可通过监视后端资源的运行状况并确定这些资源不可用的时间来提高可用性。
- 由于单个负载均衡器代表单一故障点,负载均衡器通常成对部署。
- 无服务器计算提供的优势包括基于使用的定价、自动可伸缩性以及降低的管理成本
- 无服务器计算的一个示例是无服务器函数,这些函数使你可以将代码上传到云端并定义其执行时间。
- 另一个示例是无服务器工作流,这些工作流使你可以定义业务工作流(通常使用图形设计器而无需编写代码)并指定执行时间。
- 无服务器计算还可扩展到数据库,数据库可通过缩放满足对其提出的需求。