可扩展性设计

可伸缩系统提供了弹性。通过自动添加和删除资源的功能,资源可以在任何给定时间点更密切地匹配当前需求。

扩展云资源以满足您的工作量要求

企业架构师、云架构师、基础设施负责人

确定不同级别的工作量使用所需的计算和存储资源。您可以通过水平缩放(缩放)或垂直缩放(缩放)来添加资源。
  • 水平缩放意味着为工作量添加更多的计算实例。这比纵向扩展更具成本效益,并提供更好的高可用性。大多数无状态应用程序最适合水平缩放,其中会话存储在集中数据存储(数据库、持久性高速缓存(如重做)中,而不是存储在计算实例上。
  • 垂直缩放意味着向计算实例添加更多 OCPU 核心。例如,将 Oracle Cloud Infrastructure Compute 或数据库实例更改为较大的配置。

一些资源具有完全弹性,一些资源是自动本地扩展的,而另一些资源支持通过 API 进行扩展,您可以使用 API 自动扩展。确定可以自动缩放和使用它们来缩放工作负载消耗的资源。如果您的工作量允许,选择自动缩放的服务会大大降低环境的运行复杂性。

以下 Oracle Cloud Infrastructure 服务支持缩放:

  • Oracle Cloud Infrastructure Object Storage

    提供一个互联网规模的高性能存储平台,提供可靠且经济高效的数据持久性。对象存储服务可以存储任何内容类型(包括分析数据和丰富内容,如图像和视频)的无限量非结构化数据。对象存储提供多个管理界面,使您可以轻松地大规模管理存储。平台的弹性使您可以无缝地启动小型扩展,而不会遇到性能或服务可靠性的任何降级。它是一项区域服务。

  • Oracle Cloud Infrastructure 文件存储

    是一个弹性可伸缩文件系统,支持从千字节的数据到千兆字节。

  • Oracle Cloud Infrastructure 计算自动缩放

    使您可以根据 CPU 占用率等性能度量自动调整实例池中的计算实例数。这可帮助您在高需求期间为最终用户提供一致的性能,并帮助您在低需求期间降低成本。选择要监视的性能度量,并设置性能度量必须达到的阈值以触发自动缩放事件。当系统使用满足阈值时,自动缩放将近实时地动态分配资源。随着负载增加,实例将自动预配:实例池将向外扩展。随着负载减少,实例将自动删除:实例池将放大。

  • Oracle Cloud Infrastructure 计算配置

    可以使用 API 调整实例的形状。标准配置以增量方式分配 CPU 和内存,灵活配置允许从 1 个 CPU 到 64 个 CPU 进行任何 CPU 配置。可以使用 Oracle Cloud Infrastructure Monitoring 服务监视 VM 度量并在满足特定度量时引发预警。预警通知可以根据需要调用函数来调整 VM 的形状。

    注:

    扩展 VM 实例将导致重新引导。
  • Oracle Cloud Infrastructure 函数

    Oracle Cloud Infrastructure Functions 提供完全托管、高度可扩展的按需函数即服务平台,基于企业级 Oracle Cloud Infrastructure 构建,并由 Fn 项目开源引擎提供支持。如果您希望重点编写代码以满足业务需求,请使用 Oracle Cloud Infrastructure Functions 。您不必担心底层基础设施,因为 Oracle Cloud Infrastructure Functions 可确保您的应用具有高可用性、可扩展性、安全性和监视性。您可以部署代码、直接调用代码或触发代码以响应事件,并且仅对执行过程中使用的资源计费。

  • Oracle Cloud Infrastructure Load Balancing 服务

    负载平衡器可以根据需要动态更改其带宽。您可以使用 API 自动执行此缩放。

  • Autonomous Database

    通过自治数据库,您可以扩展或收缩 CPU 或存储,而不会对系统产生影响。您可以使用 API 自动扩展。(可选)Autonomous Database 提供最多 3 倍的自动扩展功能,允许在不调用单独的 API 的情况下自动扩展。

  • 虚拟机数据库系统

    VM 数据库系统允许您上下更改 VM 数据库系统的配置。您可以使用 API 自动执行此扩展。您还可以联机扩展 VM 数据库系统的存储,Oracle 提供了 Oracle 动态扩展实用程序。

    注:

    更改 VM 数据库系统的配置会导致重新启动。对于多节点 VM 数据库系统,这采用滚动方式来维护服务的可用性。确保在您的应用服务上配置消耗超时,以配置在排空服务器会话之前扩展操作等待缩放操作的时间。
  • Oracle Exadata Database Service

    Oracle Exadata Database Service 可在不停机的情况下扩展或收缩现有节点的 CPU。X8M 或更新版本允许您将数据库和存储节点添加到集群以增加 CPU 和/或存储。您可以使用 API 或 Oracle 动态扩展实用程序自动执行此扩展。

跨可用性域和区域分配流量

企业架构师、云架构师、基础设施负责人

使用负载平衡、DNS 和流量管理指导策略可以在多个可用性域和区域之间分配流量。

使用以下服务可以在多个可用性域和区域之间分配通信:

  • Oracle Cloud Infrastructure Domain Name System (DNS)

    使用 Oracle Cloud Infrastructure 域名系统 (Domain Name System, DNS) 服务可以创建和管理 DNS 区域。您可以创建区域、将记录添加到区域以及允许 Oracle Cloud Infrastructure 的边缘网络处理域的 DNS 查询。

  • Oracle Cloud Infrastructure 流量管理引导策略

    Oracle Cloud Infrastructure 流量管理引导策略服务有助于您根据各种条件(包括端点健康状况和 DNS 请求的地理来源)将流量引导至您的端点。

    可以将策略配置为针对 DNS 查询提供智能响应,这意味着可以根据客户在策略中定义的逻辑为查询提供不同的答案(端点)。流量管理指导策略可以说明答案的健康状况,以提供故障转移功能,提供跨多个资源的负载平衡流量的功能,并说明启动查询的位置,以提供一个简单、灵活和强大的机制,从而有效地指导 DNS 流量。

  • Oracle Cloud Infrastructure Load Balancing

    Oracle Cloud Infrastructure Load Balancing 服务可将流量从一个入口点自动分配到可从虚拟云网络访问的多台服务器 (VCN)。

    该服务为负载平衡器提供了您选择的公共或专用 IP 地址以及预配的带宽。负载平衡器可提高资源利用率、方便缩放并帮助确保高可用性。您可以配置多个负载平衡策略和特定于应用程序的健康检查,以确保负载平衡器将流量仅导向到健康的实例。负载平衡器可以减少维护窗口,方法是先从不正常的应用程序服务器中排出流量,然后再将其从服务中删除以进行维护。

执行负载测试

Cloud Architect, 云架构师,Infrastructure Lead, 基础结构线索,Application Developer, 应用开发人员

采用负载测试方法来测量缩放活动是否符合应用程序要求。对应用程序执行常规负载测试以验证缩放方法。确保测试用例反映实际用户流量(如果可能),因为人工测试可能提供虚假的信任感。