规划基础架构要求和费用
当您使用自动配置选项配置服务器端代码植入端点时,跟踪代码管理器会执行以下操作:
- 为您创建一个 Google Cloud 项目
- 设置在 Cloud Run 基础架构上运行的服务器
这些 Cloud Run 部署设置用于测试和设置您的服务器容器。在验证设置时,您很可能不会超出免费用量限额。但是,如需处理来自网站的实时流量,您需要升级基础架构。
准备好升级环境后,您需要考虑以下几点:
- 稳定性:运行服务器端代码植入环境需要多高的计算能力?在旺季与淡季期间或高转化量广告系列中,您的年度流量波动有多大?
- 费用:您有多少预算来运行环境?如果您的资金不足以处理全部流量负载,您可能需要考虑限制流量,让服务器容器只处理一部分事件。
- 维护:若要使用 Cloud Run,您需要对 Google Cloud Platform 有一定了解。您是在内部有这种专业人员,还是需要聘请其他人来为您提供支持?
- 组织政策:如果贵公司已经拥有 Google Cloud Platform 账号(或组织),则可能需要在升级服务器端环境之前审核一些政策。建议您与 IT 或 DevOps 人员一起完成升级。
- 域名服务 (DNS):建议您将跟踪转移到网站的第一方环境中。与您的 IT 和 DevOps 人员合作,相应地更新 DNS 区域。
接下来,我们将探讨如何估算您需要多少个实例。如果您已精通基础架构设计,不妨直接跳到升级流程。
费用和估算 - Cloud Billing
实现了服务器端代码植入的 Cloud Run 设置的费用结构取决于您所需的计算能力和存储空间以及生成的网络流量大小。
您可以使用 Google Cloud 价格计算器来估算您的月度结算费用,但该工具在某些情况下可能不好用,尤其是在典型的网站出现流量波动,可能影响上述三类费用的情况下。
若要大致估算 Cloud Run 部署的费用,您需要考虑以下因素:
费用类型 | 对结算的影响 | 备注 |
---|---|---|
计算(实例) | 高 - 固定 | 最低费用等于您配置的最小实例数量乘以每台服务器的费用。考虑到服务器扩缩情况并为了计算出更加真实的价格范围,请用您配置的最大实例数乘以每台服务器的费用。价格约为每个实例每月 50 美元。 |
网络(出站流量) | 中 - 波动 | 系统会针对来自服务器容器的所有传出网络数据计算出站流量。这包括您的客户端和代码所发送的请求,以及从服务器容器发回到用户浏览器的 HTTP 响应。如果您的服务器端代码植入端点提供更大的资源或 JavaScript 库,网络出站流量可能也会影响费用。 |
存储(日志) | 不定 | 如果您收集到足够多的请求,超出了 Cloud Logging 免费层级的用量,日志存储费用可能会变得很高。如要降低日志记录费用,请滤除传入的请求或仅包含日志条目样本。 |
或者,您也可以密切关注 Google Cloud Platform 结算报告,设置合适的预算,并与组织的 DevOps 团队合作,共同找出对服务器端代码植入环境进行扩容的最佳方法。
设计基础架构时的注意事项
如果您希望加强对部署的控制,请熟悉下面的核对清单。虽然 Cloud Run 可以尽可能简化服务器的运行和维护,但了解服务器运行时所处的技术环境有益于做出明智的决策。
主题 | 说明 | 注意事项 |
---|---|---|
冷启动时间 | 当您的流量激增到足以触发 Cloud Run 创建新的实例时,它需要启动并设置代码植入环境。 这可能需要一些时间,并且在基础架构适应的过程中,延迟也会增加。 |
确保您配置了足够高的实例数下限,以应对正常的流量波动。 如果您发现自己正处于流量高峰期,请更新 Cloud Run 部署设置,并配置较高的实例数下限。 |
蓝绿部署 | 如果您需要更新 Docker 映像,则需要重新部署 Cloud Run 服务器。虽然 Cloud Run 会配置新的服务器版本(状态为蓝色),但流量仍会流向旧版本。当新版本准备就绪(状态为绿色)后,流量将自动转移到该版本,同时旧版本也会停用。 | 在此更新期间,您可能会看到部署了应用的多个版本。这种情况很正常。系统会自动为您设置新版本并将流量转移到该版本。 |
健康检查 | 您可能会在 Cloud Run 日志中看到对 /healthz 的定期请求。这些是由部署生成的健康检查。如果这些请求失败,则表示您的部署健康状况不佳,并且您的环境将自动重新部署。 |
虽然对 /healthz 的请求非常小,并且在日志存储中占用的空间很少,但建议您将其从 Cloud Logging 日志中排除,以便更轻松地仅解析相关日志条目。 |
自定义网域支持 | 借助自定义网域支持,您可以在第一方环境中运行代码植入设置。 Google Cloud Run 提供一种集成,可以使用全局外部应用负载均衡器快速设置自定义网域映射。 |
使用 Google Cloud Platform 时,您可以将多个自定义网域部署到服务器端代码植入环境。 如果您想在 Cloud Run 中进行部署,请留意网域映射目前存在的限制,具体取决于您在哪个区域部署了服务。 在许多情况下,使用负载均衡器是最佳选择,虽然这会增加设置的费用和复杂性。 |
Cloud 区域 | 服务器容器的自动配置设置会在 us-central1 区域中创建一个 Cloud Run 应用。若要更改区域,您必须在 Cloud Run 界面中通过新区域创建新服务,并删除现有服务。 | 如果您希望服务器端代码植入环境从多个不同区域提供服务,则可以在 Google Cloud Run 中设置多项服务,并将所有这些服务都部署在负载均衡器后面,由负载均衡器根据用户的地理位置分配流量。 |