분류 목록

    분류 전체보기 (1504)N
    남식이의 생활 이야기 (149)
    유용한 정보<휴대폰> (668)
    유용한 정보<컴퓨터> (642)N
    유용한 정보<기타> (45)

Apache 웹서버 최적화

 * Redhat Linux에서 테스트되었습니다.

 필자가 약 1년간 웹서버를 운영하면서 만족스러운 성능향상효과를 경험한 Apache 웹서버의 최적화 정보입니다.
 참고로 이 포스트에서 소개하는 내용은 Windows®용 Apache에서의 사용이 불가능하므로 이점 참고하여 이용해주시기 바랍니다. 이 포스트에 포함되어 있는 사용자님의 웹서버에 적용한 후 문제가 발생하거나 효과를 보지 못하셨다면 해당 설정값을 삭제하신 후 사용하시면 됩니다.


최대 접속자수 제한

<IfModule prefork.c>
 StartServer : 25
 MinSpareServers : 25
 MaxSpareServers : 100
 ServerLimit : 750
 MaxClient : 750
 MaxRequestsPerChild : 4000
</IfModule>
 회색박스의 삽입된 <>는 HTML의 특성상 특수문자로 처리되어 있으니 일반 문구로 변경한 후 적용하시기 바랍니다.
 별다른 설정이 없는 경우 Apache 웹서버는 최대 256명의 클라이언트를 내 서버에 접속하도록 하고 있습니다. 그렇지만, 서버의 자원만 충분하다면 최대 접속할 수 있는 클라이언트의 수를 증가시킬 수 있으며, 대형 커뮤니티의 운영시 매우 적절한 설정입니다. 필자의 경우에는 MaxClient를 500명으로 지정하여 사용중이지만 특별한 문제가 없었습니다.
StartServer : 시작할 서버의 수
MinSpareServer : 최소 서버의 수
MaxSpareServer : 최대 서버의 수
ServerLimit : 서버의 한계 자원 (MaxLimit도 동일하게 설정)
MaxClient : 최대 접속자의 수 (ServerLimit도 동일하게 설정)
MaxRequestsPerChild : 아파치의 서버 자식개수


KeepAlive 설정

KeepAlive On
KeepAliveTimeout 3
 KeepAlive는 일정시간이 지난 후 자동으로 서버의 접속이 끊어지도록 설정하여 Apache의 무거움을 최소화 시켜주는 기능입니다. 국내의 경우 초고속 인터넷망이 확산되어 있기 때문에 3초 정도로 지정하여 사용하면 충분하지만, 글로벌 홈페이지의 경우에는 10초 정도로 설정하여 사용하는 것이 안정적입니다.


Timeout 설정하기

Timeout 20
 Timeout은 사용자가 아무 반응을 하지 않아도 접속을 언제까지 유지시킬 것인지 지정할 수 있습니다.
 필자의 경우에는 최초 10초로 지정하여 웹서버를 운영하였으나, 필자가 제로보드XE, 텍스트큐브를 테스트하던 도중에 사소한 문제점들이 발견되어 Timeout을 1초단위로 조정하여 확인해본결과 20초가 가장 안정적이었습니다. 이 부분은 사용자의 서버의 환경에 맞도록 설정하여 사용하시면 되는 항목입니다.
신고

의견을 남겨 주세요

Powerd by Tistory, designed by criuce, modify by Namsik's Story
rss