티스토리 뷰

웹개발/Linux

KeepAlive 란 ?

yaku 2014. 1. 22. 11:38

apache.org의 KeepAlive에 대해 아래와 같이 정의 되어 있다.


The Keep-Alive extension to HTTP/1.0 and the persistent connection feature of HTTP/1.1 provide long-lived HTTP sessions which allow multiple requests to be sent over the same TCP connection. In some cases this has been shown to result in an almost 50% speedup in latency times for HTML documents with many images. To enable Keep-Alive connections, set KeepAlive On


HTTP프로토콜상 한번 접속 후 자료를 모두 전송하면 접속을 끊어 버리지만 KeepAlive On상태에서는 KeepAliveTimeOut시간 동안 접속을 끊지않고 다음 접속을 기다린다. 순수 html파일, 이미지파일 등으로만 구성된 서버(동적파일이 없는서버)에 KeepAlive On으로 설정할 경우 50%정도의 성능 향상을 보인다고 한다. 단 이와 같은 성능향상을 보일려면 서버가 바쁘지 않아야 한다. 아주 바쁜 서버 환경에서 KeepAlive On을 설정해 놓을 경우 모든 접속자 마다 연결 유지를 해 놓아야 하기 때문에 아파치 프로세스수가 기하 급수적으로 늘어나 MaxClient값을 초과하게 된다. 또한 On상태일때 접속유지 하는 프로세스들 때문에 메모리를 그 만큼 많이 사용하게 된다. 따라서 KeepAlive값은 단순히 On/Off 시킬것이 아니라 접속자, 메모리용량과 연관해서 값을 설정하여야한다.


KeepAlive 설정

접속자가 많지만 메모리가 충분하다 : On

접속자가 많지만 메모리 여유가 없다 : Off

접속자가 적고 메모리가 충분하다 : On

접속자가 적고 메모리 여유가 없다 : Off

메모리가 충분하다는 의미는 접속자가 MaxClient값에 도달했을 경우라고 swap메모리를 사용하지 않는상태를 말한다.



'웹개발 > Linux' 카테고리의 다른 글

FIND 명령어 사용법  (0) 2014.02.26
rm으로 삭제한 파일 복구하기  (0) 2014.02.26
NGINX 란 ?  (0) 2014.01.22
로그 시스템 (System Log ) 연구  (0) 2014.01.13
명령어 정리  (0) 2013.11.02
댓글
D-DAY
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함