Apache의 Prefork와 Worker 설정
Prefork
옵션 설명
StartServer
아파치 구동시에 자식 프로세스 개수 지정
MinSpareServers, MaxSpareServers
부하가 적어서 MinSpareServers 개수 보다 적었을 경우 최소한 이 개수 만큼 유지하려고 아파치가 노력하고 부하가 증가하여 프로세스 개수가 많아질 경우에 MaxSpareServers 개수 이하로 줄이려고 아파치는 노력한다. 즉, 절대적인 수치가 아니다.
MaxClient
초기 시작시 실행가능한 최대 아파치 자식 프로세스의 개수를 지정
*worker방식의 MaxClient 와는 전혀 다른 의미임.
MaxReqeustPerChild
클라이언트들의 요청 개수를 제한. 만약 자식 프로세스가 이 값만큼의 클라이언트 요청을 받았다면 이 자식 프로세스는 자동으로 죽게 된다. 0 일 경우엔 무한대
설정값 확인 방법
# /usr/local/apache2/bin/apachectl -l
prefork.c 가 보이면 prefork로 동작하고 있는것입니다.
※ worker 로 변경하는 방법
# vi /etc/sysconfig/httpd#HTTPD=/usr/sbin/httpd.worker
위 주석을 제거 한후 아파치 재기동 합니다.# service httpd restart
# apachectl -l
로 확인했을때 worker.c 가 있다면 성공
Worker
옵션 설명
StartServers
시작시에 생성되는 서버 프로세스의 개수
MaxClient
동시 연결가능한 클라이언트의 최대 개수.
MinSpareThreads
최소 thread 개수
MaxSpareThreads
최대 thread개수
ThreadPerChild
개별 자식 프로세스가 지속적으로 가질 수 있는 Thread의 개수
MaxRequestPerChild
자식 프로세스가 서비스할 수 있는 최대 요청 개수
현재 worker 모듈 설치 되었는지 확인을 위해서는 위의 방법뿐만아니라
httpd -V 명령으로 확인 가능합니다. (V는 대문자)
# httpd -V
Server MPM 에 나타나는 값으로 확인 가능합니다.
※ prefork, worker와 관련된 문서가 여기저기 흩어져 있어 출처 없이 짜깁기했습니다.
원작자분께서 요청하시면 출처 표기하겠습니다.
'WEB2.0 > 프로그래밍' 카테고리의 다른 글
| Apache의 Prefork와 Worker 설정 (0) | 2012/05/15 |
|---|---|
| 아파치 로그 일자별로 나눠서 기록하기 (0) | 2012/04/16 |
| 내가 추천하는 스트레스 테스트 도구 JMeter (0) | 2012/04/10 |
| rsync를 이용한 원격 백업 (0) | 2012/04/09 |
| 아파치로 구동되는 웹서버에 올린 웹사이트가 보이지 않을때 (0) | 2012/03/29 |
| 아마존에 APM 구축하기 (6/6) (7) | 2012/03/26 |




