출처 : http://trend21c.tistory.com/1351

 

이 아파치 에러로그는 말 그대로 설정된 MaxClients 수치에 이미 서버가 도달했으니 이 수치를 올리는 것을 고려하라는 로그입니다.


MaxClients 에 도달하면 이외의 초과 접속은 허용되지 않습니다.


MaxClients 세팅을 늘리는 것을 고려해야죠.


여러분이 아파치를 설치한 환경에 따라 http.conf 파일을 수정하셔야 합니다.




Prefork



옵션 설명

StartServer
아파치 구동시에 자식 프로세스 개수 지정

MinSpareServers, MaxSpareServers
부하가 적어서 MinSpareServers 개수 보다 적었을 경우 최소한 이 개수 만큼 유지하려고 아파치가 노력하고 부하가 증가하여 프로세스 개수가 많아질 경우에 MaxSpareServers 개수 이하로 줄이려고 아파치는 노력한다. 즉, 절대적인 수치가 아니다.


ServerLimit

최대 자식 프로세스 수, MaxClients 와 동일하게 해주시면 됩니다.


MaxClients
초기 시작시 실행가능한 최대 아파치 자식 프로세스의 개수를 지정
*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 에 나타나는 값으로 확인 가능합니다.

'OS' 카테고리의 다른 글

[리눅스] 프로세스 죽이기  (0) 2015.09.26
[apache] 자동재시작  (0) 2015.09.26
[아파치] 최적화  (0) 2015.09.22
[윈도우] 시스템 드라이브 변경  (0) 2015.06.26
[리눅스] CentOS PHP mssql 사용 셋팅  (0) 2014.11.04
Posted by 꼬장e
,