配额管理最佳实践

本页介绍了管理 Cloud Healthcare API 配额的最佳实践。如果您的 Google Cloud 项目有或可能有大量流量,并且您需要的配额超出了 Cloud Healthcare API 默认提供的配额,请使用本页面。

Cloud Healthcare API 默认配额

默认的 Cloud Healthcare API 配额并非适用于所有用例,尤其是当您的 Google Cloud 项目有大量流量时。Cloud Healthcare API 不会自动增加配额。您必须规划和监控配额用量。

监控和查看配额的最佳实践

您可以通过多种方式查看配额用量。在估算和查看 Cloud Healthcare API 的配额时,我们建议您使用服务配额模型。借助该模型,您可以根据以下标准准确评估可用的配额:

  • 是否存在管理员替换项。在组织中被授予 Quota Administrator 角色的主账号可以对组织内的Google Cloud 项目中的配额应用管理员替换值。管理员替换值会取代默认限制和使用方替换值。
  • 是否存在生产者替换项。服务所有者向服务的使用方授予提供方替换项。 Google Cloud 是 Cloud Healthcare API 服务的服务所有者。 Google Cloud 提供的任何配额替换值都是生产者替换值。

  • 是否存在使用方替换项。向 Cloud Healthcare API 发出请求的用户是 Cloud Healthcare API 服务的使用方。您可以针对各种情况应用使用方替换值,例如,作为一项费用控制措施,限制Google Cloud 项目中的配额以防止超出预算。

如果您启用了上述任何替换项,则可以计算使用方配额上限,以准确评估可用配额。

申请更多配额的最佳实践

Google Cloud 提供了申请更高配额的流程。如需了解如何处理配额增加申请,请参阅配额增加申请简介

在申请更多配额之前,请确保您已实现以下两项:

这些实现可能会降低您所需的配额,原因如下:

  • 这两种实现都会将负载高峰分散到几小时或几分钟(而不是几秒钟)内。
  • 这两种实现都能在 24 小时内高效使用配额。如果在 24 小时内,请求明显超出默认配额的情况持续存在,系统可能会向 Cloud Healthcare API 服务分配更大的资源池。我们仅根据请求分配额外的资源,并且会根据具体情况进行决定。
  • 保持一致的资源使用情况有助于 Google Cloud 我们更轻松地了解您的配额要求,并为您提供所需的配额。

为了有效管理容量和配额,您需要了解组织的容量需求。如果您正在规划容量需求,并认为在 Google Cloud 项目正式投入使用时需要大幅增加配额,请向Google Cloud 客户服务团队申请增加配额。客户服务团队可在 Google Cloud 项目的测试和发布阶段协助您分配和增加配额。

您无需拥有付费 Customer Care 服务即可申请增加配额。有些配额增加请求会在 2-3 个工作日内完成,但我们建议您预留更长时间。如果您申请的配额增加幅度较大,配额增加请求可能需要 10 个工作日或更长时间才能处理完毕。在规划过程中,您必须预留时间来回复客户服务团队,以解决与请求相关的任何问题或提出新问题。如果您确保初始配额增加请求足够详细,或许可以缩短等待处理请求的时间。

预测配额需求的最佳实践

在 Google Cloud 项目投入生产之前,请预测并规划您需要多少配额。规划配额需求有助于防止日后资源消耗发生意外限制。

以下部分介绍了规划配额时需要考虑的事项。

预测所有数据存储空间和客户端的总使用量

了解您在所有 Cloud Healthcare API 数据存储区中的总使用量,以及向您的Google Cloud 项目发出请求的所有客户端的总使用量。

  • 某些 Google Cloud 项目会实现多个 Cloud Healthcare API 用例。例如,您的 Google Cloud 项目可能会针对不同类型的数据使用多个 Cloud Healthcare API 数据集和数据存储区,从而增加总配额用量。
  • 配额按Google Cloud项目和区域强制执行。确保您准确衡量了多个地区所需的配额。如果您有多个 Google Cloud 项目,可能需要更准确地衡量各个项目的效果。如需详细了解如何规划按区域配额,请参阅预测按区域用量
  • Cloud Healthcare API 不会在客户端、数据集或数据存储区之间负载均衡配额。客户必须确定是否要实现优先级方案,以确保最重要的流量不会遇到 429 RESOURCE_EXHAUSTED 错误。

预测每个区域的使用量

Cloud Healthcare API 按Google Cloud项目和区域衡量配额。配额通常按分钟衡量,这使得每秒的请求量小幅激增可以通过每分钟的规模来平衡。

如果您的 Google Cloud 项目使用多个区域,您可以设置每个区域的配额。

如果您的 Cloud Healthcare API 数据集位于 us 多区域位置,并且您想申请更多配额,请在配额申请中注明配额适用于“美国元区域”。us 多区域位置由以下子区域组成:

  • us-central1
  • us-east1
  • us-west1

如果您在任何 us- 子区域中已有在使用 Cloud Healthcare API 配额的流量,请务必在为 us 多区域提出配额增加请求时将这些子区域中的现有流量考虑在内。例如,如果您在 us-central1us 中都有数据集,并且您请求在 us 中增加配额,请在请求中指明您在 us-central1 中也有数据集。

一贯偏向低交易量

以下场景说明了持续发送较小流量的重要性,而不是发送交易量较大但间隔较长的交易。

流量的计算公式为 request payload * time = traffic volume高量事务是指在短时间内对 Cloud Healthcare API 发出的一个或多个包含大量载荷的请求。如果在短时间间隔内发送大量请求,无论载荷大小如何,这些请求也可能被视为高量请求。

假设客户端收集大量交易,并每 5 分钟以突发方式将这些交易发送到 Cloud Healthcare API。会发生以下情况:

  1. 初始突发流量会在第一分钟内消耗配额(取决于分钟回滚),直到用尽所有配额。
  2. 所有剩余的突发流量都会收到 429 RESOURCE_EXHAUSTED 错误。如果已配置,则所有受影响的请求都会遇到指数退避。
  3. 遇到初始指数退避的请求中有一定比例会重新安排在下一分钟重试。系统会在一分钟内尝试多次发出某些请求,然后在下一分钟重试。
  4. 如果请求量足够大,重试的请求可能会再次遇到 429 RESOURCE_EXHAUSTED 错误并进行指数退避。某些流量突发可能会在不同时间遇到指数退避,并且以后再次尝试发送流量可能会在同一分钟内收敛。
  5. 如果请求量仍然较高,系统会在下一次流量高峰开始时重试部分流量。由于有更多流量被添加到现有待处理请求中,因此问题会更加严重。您的应用可能难以维护积压的请求并将其持续发送到 Cloud Healthcare API。

此示例说明了了解每分钟流量的重要性。实现流量和退避,以防止网络拥塞,并确保您的应用不会遇到需要重试的许多失败情况。

查看 DICOM 和 FHIR 配额

如需查看与 FHIR 和 DICOM 存储区和操作关联的 Cloud Healthcare API 配额,请参阅配额限制