우리는 메모리/CPU(64GB RAM 및 23개 코어) 집약적인 코드를 실행하는 데비안 서버를 모든 그룹 구성원이 공유하고 있습니다. 문제는 때때로 코드 하나가 전체 서버에 과부하를 주어 다른 사람이 아무 것도 할 수 없게 만든다는 것입니다. 알려진 해결책이 있는지 묻고 싶습니다. 각 사용자가 사용하는 메모리 양을 제한하고 제한을 초과하면 프로세스를 종료하는 것과 같은가요? 더 좋은 제안이 있나요?
답변1
들어가서 구경하시면 됩니다 /etc/security/limits.conf
. 사용자 또는 그룹별로 리소스를 제한할 수 있습니다(예: 최대 열린 파일 수, 메모리 제한 등).
사용자는 를 실행하여 자신의 "한계"를 볼 수 있습니다 ulimit -a
. 그에 대해 소프트 제한을 지정하면 동일한 명령을 사용하여 이를 변경할 수 있습니다.
nice
프로세스의 우선순위를 변경할 수도 있습니다 .
바라보다:
man ulimit
man limits.conf