프로그래밍
Python 리소스 제한
warpmemory
2016. 8. 10. 15:15
1. 개요
- 파이썬을 데몬 개발을 하다 보면, 해당 데몬이 문제를 메모리를 많이 먹거나, 프로세스를 너무 많이 생성하거나, 파일을 너무 많이 오픈하여, 서버 전체에 문제를 일으키는 경우가 발생하는데, 이를 해결하기 위한 방법을 찾아보았다.
2. Resource limits
- https://docs.python.org/2/library/resource.html
- http://pythonforbiologists.com/index.php/measuring-memory-usage-in-python/
import resource
print resource.getrlimit(resource.RLIMIT_AS)
print resource.getrusage(resource.RUSAGE_SELF)
resource.setrlimit(resource.RLIMIT_AS, (2**30, 2**30))
3. Restricting process cpu usage
import os
os.nice(19) # 우선순위 최하위로 프로세스 실행