当前位置: 首页 > 知识库问答 >
问题:

当在helm图表中没有内存限制时,使用xx:maxrampercent时,堆大小将是多少

万俟英锐
2023-03-14

对于在kubernetes集群中使用新参数xx:maxrampercent,JVM中的堆大小有两个问题:

1)我的JVM容器只设置了内存请求集(在helm图表中),但没有设置内存限制,以便获得最大的内存使用。由于xx:maxrampercent与限制有关,并且没有设置限制,那么将获得多大的堆大小?

2)我的JVM容器没有定义(在helm图表中)内存请求和内存限制以获得最大的内存使用。由于xx:maxrampercent与限制有关,并且没有设置限制,那么将获得多大的堆大小?

托马斯·比尔

共有1个答案

濮阳
2023-03-14

如果没有设置限制,那么将占用运行pod的节点的RAM(您的pod使用的是该节点的内核)。

xx:maxrampercent对于在集群中运行不是很实际,因为您设置了限制,但不能完全使用它,或者没有指定限制,并从节点获得限制,这通常是您无法控制的。

 类似资料:
  • 问题内容: 对于我的应用程序,Java进程使用的内存远远大于堆大小。 容器运行所在的系统开始出现内存问题,因为容器占用的内存比堆大小大得多。 堆大小设置为128 MB(-),而容器最多占用1GB的内存。正常情况下需要500MB。如果docker容器的限制低于(例如),则该进程将被操作系统的内存不足杀手杀死。 你能解释一下为什么Java进程使用的内存比堆多得多吗?如何正确调整Docker内存限制的大

  • 在堆上分配内存时,唯一的限制是可用RAM(或虚拟内存)。它产生Gb的内存。 那么,为什么堆栈大小如此有限(大约1 Mb)?什么技术原因阻止您在堆栈上创建真正大的对象? 更新:我的意图可能不清楚,我不想在堆栈上分配巨大的对象,也不需要更大的堆栈。这个问题只是纯粹的好奇心!

  • 问题内容: 进程的大小是否有限制?它是否仅取决于机器的性能?我想知道这一点,以限制对函数的递归调用的深度。 谢谢。 问题答案: 堆栈通常受资源限制的限制。您可以使用以下命令查看安装的默认设置: (这表明我的是8MB,这是巨大的)。 如果删除或增加该限制,您仍将无法使用计算机中的所有RAM作为堆栈- 堆栈从进程地址空间顶部附近的一点向下增长,并在某个时刻它将运行到您的代码,堆或已加载的库中。

  • 问题内容: 我们可以拥有任何大小的Java对象而不必担心异常吗?我将使用一个类的对象,该类由成千上万个包含s和s以及许多其他非原始类型的其他对象组成。 谢谢 问题答案: Java Heap是对您可以在系统中拥有的对象大小的限制。 如果对象的大小超出堆大小,则会生成“内存不足”错误。 在您的情况下,总对象的大小(ArrayList中的对象+系统中其他对象)的重要性更大,因为ArrayList只是引用

  • 问题内容: 我有时编写Python程序,这些程序很难确定执行前将使用多少内存。因此,有时我会调用一个Python程序,该程序试图分配大量RAM,从而导致内核大量交换并降低其他正在运行的进程的性能。 因此,我希望限制Python堆可以增长多少内存。达到限制后,程序可能会崩溃。最好的方法是什么? 如果重要的话,很多代码都用Cython编写,因此应该考虑在那里分配的内存。我还没有嫁给一个纯粹的Pytho

  • 本文向大家介绍jvm最大内存限制多少?相关面试题,主要包含被问及jvm最大内存限制多少?时的应答技巧和注意事项,需要的朋友参考一下 考察点:JVM (1)堆内存分配 JVM初始分配的内存由-Xms指定,默认是物理内存的1/64;JVM最大分配的内存由-Xmx指定,默认是物理内存的1/4。默认空余堆内存小 于40%时,JVM就会增大堆直到-Xmx的最大限制;空余堆内存大于70%时,JVM会减少堆直到