【问题标题】:How does host machine's CPU utilized by docker containers and other applications running on host?docker 容器和主机上运行的其他应用程序如何利用主机的 CPU?
【发布时间】:2020-08-27 05:14:09
【问题描述】:

我正在 docker 容器中运行一个微服务应用程序,并且必须使用 JMeter 工具对其进行测试。所以我在我的主机上运行 JMeter,我的主机有 4 个内核。我在运行容器时使用 --cpu=2 标志为容器分配了 2 个内核。所以这意味着它可以在运行时根据需要使用多达 2 个内核。我将剩下的 2 个内核留给 JMeter 和其他应用程序和系统使用。

在这里我需要澄清一下,如果 JMeter 和其他应用程序需要超过 2 个核心并且容器也需要完全分配 2 个核心,会发生什么? 有没有办法将 2 个核心完全分配给容器? (这意味着任何其他应用程序或系统都不能使用这 2 个核心) 提前谢谢你。

【问题讨论】:

    标签: docker jmeter cpu-usage


    【解决方案1】:

    答案很可能是“否”,解释会因您的操作系统而异。

    您可以尝试通过使用CPU affinity 来实现这一点,但是 CPU 不仅是您应该关注的一个指标,我更愿意关注 RAM 和磁盘的使用情况。

    一般来说,在同一台物理机器上测试负载生成器和应用程序是一个非常糟糕的主意,因为它们都非常耗费资源,因此请考虑为此使用 2 台单独的机器,否则两者都会受到context switches 的影响,而您将不会能够使用JMeter PerfMon Plugin监控JMeter和被测应用程序的资源使用情况

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-10-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多