아파치 프로세스가 수십개 떠있습니다...
글쓴이: cleol / 작성시간: 목, 2005/01/27 - 12:03오전
왜 그럴까요? httpd가 약 40개 정도입니다. 레드햇 7.3 이고 apache 2.0.52 입니다. 소스를 컴파일했고 configure 시
--enable-mods-shared=most --enable-modules=so --with-mpm=worker
옵션을 사용했습니다. 설정 파일은 설치 후 전혀 손대지 않았습니다. 설치 후 사흘정도 아무런 작업을 하지 않다가 어제 작업을 하려고 보니 수십개 프로세스가 떠있더군요. 액세스 로그를 보면 제가 설치 직후 테스트 하려고 html 파일을 몇개 열어봤던 거 밖에는 없습니다. 별다른 접속도 없엇는데 왜 수십개나 되는 자식 프로세스를 띄웠을까요..? 혹시나 해서 아파치를 리스타트하고 오늘 다시 살펴봤더니 역시 수십개의 httpd 가 떠있습니다..혹시 worker mpm 때문인지... 여하튼 뭔가 이상합니다..
Forums:
정상적인 것으로 생각됩니다.아파치의 설정파일인 httpd.conf(또
정상적인 것으로 생각됩니다.
아파치의 설정파일인 httpd.conf(또는 apache2.conf)에 보시면 처음 실행시에
실행할 프로세서수를 정하는 부분이있습니다.
즉, <IfModule prefork.c> <IfModule worker.c> <IfModule perchild.c>등
이 있는데 그 항목의 숫자에 따라서 프로세서가 뜹니다.
prefork에 의해서 실행되는 프로세서가 기본 5로 뜰것이고 그 프로세서마다 worker에
의해서 각 5개 즉, 25개가 될것이고 각 프로세서마다 perchild의 값이 적용되어
5개씩 뜰겁니다.(thread를 사용하지 않았으니 perchild에 의한 값은 적용되지
않을겁니다.)
아마 'ps -ef | grep apache'로 보시면 root는 하나고 이 root에 의해서 fork된
child들을 구분해 볼 수 있을겁니다.(pid와 ppid이용)
실제 필드에서 적용되는 서버라면 기본값정도로 이용되도 별 상관은 없지만 혼자
사용하는 test서버의 경우라면 위의 각 항목값을 작은 수로 놓아두셔도 됩니다.
제경우에는 StartServers나 NumServers는 2나 3을 주고 Min... 값도 2~3을
주어서 (thread를 사용안함.) 5개정도의 프로세서만 실행되도록하고 있습니다.
------------------------------
좋은 하루 되세요.
댓글 달기