나는 파이썬 프로그램을 가지고 있습니다 myprogram.py
. 내 Python 프로그램이 메모리 부족(OOM)으로 인해 종료되었음을 깨달았습니다. 그러나 내 VPS가 LXC 내부에 있고 1GB의 스왑 공간이 있으며 메모리가 가득 차면( 로 확인 htop
) VPS에 스왑 공간이 내장되어 있음에도 불구하고 스왑 메모리를 활용하지 않는다는 점도 확인했습니다. 커널 구성을 변경할 권한이 없습니다 vm.swappiness
. 하지만 명령에 cgroups
텍스트 가 있다는 것을 깨달았습니다 df
. 어쩌면 OOM Killer가 사람을 죽이는 것을 막는 데 도움이 될 수도 있습니다 myprogram.py
.
이것은 cgroup 메모리입니다:
cgroup.clone_children memory.kmem.failcnt memory.kmem.tcp.limit_in_bytes memory.max_usage_in_bytes memory.move_charge_at_immigrate memory.stat notify_on_release
cgroup.event_control memory.kmem.limit_in_bytes memory.kmem.tcp.max_usage_in_bytes memory.memsw.failcnt memory.numa_stat memory.swappiness system.slice
cgroup.procs memory.kmem.max_usage_in_bytes memory.kmem.tcp.usage_in_bytes memory.memsw.limit_in_bytes memory.oom_control memory.usage_in_bytes tasks
memory.failcnt memory.kmem.slabinfo memory.kmem.usage_in_bytes memory.memsw.max_usage_in_bytes memory.pressure_level memory.use_hierarchy user.slice
memory.force_empty memory.kmem.tcp.failcnt memory.limit_in_bytes memory.memsw.usage_in_bytes memory.soft_limit_in_bytes my_python_program
root@mydom:/sys/fs/cgroup/memory#