container_memory_rss & container_memory_working_set_bytes
指标阐明
container_memory_rss和container_memory_working_set_bytes是两个与容器内存应用相干的指标,用于监控和度量容器的内存耗费状况。
上面是对这两个指标的解析:
container_memory_rss:
- 指标名称:container_memory_rss
- 指标类型:Gauge(示意某一时刻的数值)
- 解析逻辑:该指标应用了Linux的/proc文件系统,读取了容器过程的/proc/[PID]/statm文件,其中PID是容器过程的过程ID。在该文件中,第2列示意过程的Resident Set Size (RSS),即理论驻留在物理内存中的大小。Prometheus的采集器会定期读取这个值,并将其裸露为container_memory_rss指标。
container_memory_working_set_bytes:
- 指标名称:container_memory_working_set_bytes
- 指标类型:Gauge
- 解析逻辑:相似于container_memory_rss,该指标也应用了Linux的/proc文件系统,读取了容器过程的/proc/[PID]/statm文件。在该文件中,第6列示意过程的Working Set Size,即过程以后应用的物理内存大小。Prometheus的采集器会定期读取这个值,并将其裸露为container_memory_working_set_bytes指标。
这两个指标能够帮忙咱们理解容器的内存应用状况。container_memory_rss示意容器过程理论驻留在物理内存中的大小,而container_memory_working_set_bytes示意容器过程以后应用的物理内存大小。
linux /proc/[pid]/statm文件解析
Resident Set Size (RSS) & Working Set Size
Resident Set Size(常驻集大小)和Working Set Size(工作集大小)是与计算机内存治理相干的概念,用于形容过程在内存中的应用状况。它们有一些区别,上面我会具体解释。Resident Set Size(常驻集大小): 常驻集大小是指一个过程以后在物理内存中占用的内存大小。它包含过程代码、数据和堆栈等局部,这些局部是以后处于活动状态且必须常驻在内存中的。常驻集大小反映了过程所需的最小物理内存空间,以便放弃失常运行。
Working Set Size(工作集大小): 工作集大小是指一个过程以后正在应用的内存大小。它包含过程以后应用的代码、数据和堆栈等局部,以及可能被频繁拜访的页面或内存块。工作集大小能够依据过程的流动模式和内存拜访模式进行动静调整,以适应过程的需要。
区别:
常驻集大小是一个过程理论占用的物理内存大小,而工作集大小是过程以后沉闷的内存局部的大小。常驻集大小是一个绝对固定的概念,而工作集大小是动态变化的。过程的工作集大小会依据过程的流动模式、内存需要和零碎内存管理策略进行调整。常驻集大小对于零碎的内存治理和性能剖析很重要,而工作集大小则更多地与过程的内存拜访效率和性能相干。总结: 常驻集大小和工作集大小是形容过程在内存中的应用状况的两个概念。常驻集大小是过程在物理内存中理论占用的大小,而工作集大小是过程以后沉闷的内存局部的大小。它们在反映过程内存占用和性能方面有不同的作用。
原文作者:蓝色瞳仁
版权申明:转载请注明作者和链接。