У меня nodejs приложение, работающее внутри контейнера docker в AWS ECS. Сообщаемая память продолжает расти, как утечка памяти, с трафиком c. Чем больше трафик c, тем быстрее он растет. Тем не менее, после проверки памяти с помощью top и free -m внутри экземпляра, память (rss) стабильна и намного ниже docker stats.
Заходя внутрь экземпляра в bash, вот память из cgroup: rss + cache + swap очень близок к памяти из top
, а также из os.memoryUsage().rss
в nodejs, но слишком далеко от memory.usage_in_bytes. Как это возможно?
root@ip-10-1-10-197:/app# cat /sys/fs/cgroup/memory/memory.kmem.usage_in_bytes
192913408
root@ip-10-1-10-197:/app# cat /sys/fs/cgroup/memory/memory.usage_in_bytes
280588288
root@ip-10-1-10-197:/app# cat /sys/fs/cgroup/memory/memory.stat
cache 8192
rss 86421504
rss_huge 0
shmem 0
mapped_file 0
dirty 0
writeback 0
swap 0
pgpgin 199618711
pgpgout 199597610
pgfault 358572897
pgmajfault 0
inactive_anon 0
active_anon 86396928
inactive_file 4096
active_file 4096
unevictable 0
hierarchical_memory_limit 536870912
hierarchical_memsw_limit 9223372036854771712
total_cache 8192
total_rss 86421504
total_rss_huge 0
total_shmem 0
total_mapped_file 0
total_dirty 0
total_writeback 0
total_swap 0
total_pgpgin 199618711
total_pgpgout 199597610
total_pgfault 358572897
total_pgmajfault 0
total_inactive_anon 0
total_active_anon 86396928
total_inactive_file 4096
total_active_file 4096
total_unevictable 0