【问题标题】:Does Google Cloud Run memory limit apply to the container size?Google Cloud Run 内存限制是否适用于容器大小?
【发布时间】:2019-10-27 07:22:02
【问题描述】:

来自文档 (https://cloud.google.com/run/docs/configuring/memory-limits) 的 Cloud Run 内存使用情况

超过其允许内存限制的 Cloud Run 应用程序将被终止。

当您配置内存限制设置时,您指定的内存分配用于:

  • 运营您的服务
  • 将文件写入磁盘
  • 在您的容器中运行二进制文件或其他进程,例如 nginx Web 服务器。

容器的大小是否计入“运行您的服务”并计入内存限制?

我们打算使用可能已经接近内存限制的图像,因此我们想知道服务本身是否只能访问从限制中减去容器大小后剩下的内容

【问题讨论】:

    标签: google-cloud-run


    【解决方案1】:

    Cloud Run PM 在这里。

    只有您在内存中加载的内容才会计入您的内存使用量。因此,例如,如果您有一个 2GB 的容器,但只在其中执行了一个非常小的二进制文件,那么只有这个会被计为已用内存。

    这意味着如果您的映像包含许多永远不会加载的操作系统包(例如,因为您继承自 a.big 基础映像),这很好。

    【讨论】:

    • 谢谢,这很有帮助
    【解决方案2】:

    您部署到 Cloud Run 的容器映像的大小计入内存限制。例如,如果您的容器映像为 3 GiB,您仍然可以在 256 MiB 内存环境中运行。

    新文件写入本地文件系统,或(显然)在您的应用中分配更多内存将计入容器的内存使用量。 (也许也很明显,但值得一提)操作系统会将容器的入口点可执行文件“加载”到内存中(好吧,执行它)。这也将计入可用内存。

    【讨论】:

    • 谢谢,这很有帮助
    猜你喜欢
    • 2019-10-14
    • 2020-09-16
    • 1970-01-01
    • 1970-01-01
    • 2014-11-12
    • 1970-01-01
    • 2023-01-20
    • 2021-11-10
    • 1970-01-01
    相关资源
    最近更新 更多