웹마스터 팁
Apache 2 prefork 와 worker 차이
2012.06.26 07:42
요즘 메모리 적게 먹는다며 엔진엑스(nginx)쓰시는 분들이 많아지고 있죠. .. 전 아파치를 쓰다 엔진엑스를 쓰려니..
당최.. 어려움을 격다 포기했습니다. 훔.. 그렇다고 남에게 설명할 실력도 안되는데 몇가지 적어봅니다.
보통 아파치를 사용하시는 분들의 경우 Prefork 모드를 이용하여 설치를 많이 하십니다. 우분투의 경우도 11.10까지
apt-get 로 설치를 하게되면 이방식으로 설치되어 오다 12.04 부터 worker가 기본으로 변경되었습니다.
이 방식들을 Apache(아파치)에서 이 방식들을 뭐라 하느냐! 바로 MPM이라 합니다.
MPM -> Multi Processing Module 로 다중 처리 모듈이란 말이구요 리눅스에서 보면 부모 프로세스 , 자식 프로세스
라는 말이 있습니다. 즉 아파치 웹 서버가 받아들이는 요청을 처리하기 위해 자식 프로세스에게 분배하는 방식입니다.
자신의 웹서버 방식 확인은 httpd -l 해보시면 버전과 함께 사용된 모듈파일들이 나오는데 prefock.c 가 있다면 prefo
ck이고 worker.c가 있다면 worker입니다.
Prefork
실행중인 프로세스를 메모리 영역까지 복제하여 실행합니다. 프로세스가 소비하는 메모리가 많습니다. 이것 때문에
사람들이 엔진엑스보다 아파치가 메모리를 많이 먹는다 라고들 합니다.
메모리는 많이 먹는 대신 응답 프로세스를 미리 띄어 놓고 클라이언트가 요청을 하면 자식 프로세스가 반응하게 됩
니다.
Worker
일반적으로 멀티 CPU인 서버에서의 성능이 뛰어납니다. 요즈음 쿼드 코어다 헥사코어다 해서 CPU들의 코어가 2개
이상인 시스템이 많죠 요청을 쓰레드(thread) 단위로 처리하며 최대 64개의 쓰레드로 할 수 있습니다.
지정된 만큼의 프로세스와 각 쓰레드를 준비하여 클라이언트의 요청을 받아 들이는 방식입니다. 대신 Prefork보다
아주 적은 메모리를 사용하게 됩니다.
두 방식의 속도 차이는 없습니다. Worker이 Prefork에 비해 불안정적이다 라고 말하시는 분들도 재법 보았습니다.
국내에서는 대부분의 개인서버 또는 분들이 Prefork를 많이들 사용하십니다. 그런데 외국에서는 Prefork보다 Worker
을 더 많이 사용하는 추세입니다. 그리고 우분투 12.04의 경우도 기본 패키지 설치방식이 worker로 변경되었습니다.
훔.. 아파치를 고수하시는 분들에게는 한번 시도해봄직한 방식인데요 저도 제가 관리중인 서버들은 모두 worker로
운영하고 있습니다. 다들 불안정하다라고들 하시는데 뭐가 불안전한지는 모르겠네요^^;
댓글 3
-
상자님
2012.07.09 02:21
-
데브위트™
2012.07.09 18:29
실수 군요 httpd -l 입니다.
-
상자님
2012.07.10 17:33
ㅋㅋ 이댓글보기전에 찾아낸게 문제에요 ㅜㅜ
제목 | 글쓴이 | 날짜 |
---|---|---|
nginx rewrite 팁 | 병든natura | 2012.02.21 |
우분투 10.04 LTS, nginx+php-fastcgi+mysql 설치하기 [1] | fsfsdas | 2011.02.20 |
Apache 2 prefork 와 worker 차이 [3] | 데브위트™ | 2012.06.26 |
확장변수 숫자(화폐) 콤마 표시하기 (sketchbook 스킨) | 라싸 | 2012.08.12 |
일반 페이지(ARTICLE) 등에서 이미지 리사이징 제거. [1] | 무얼까 | 2012.08.12 |
추천, 신고 제한 해제 (관리자만 v1.5.2.2) [4] | mugenk | 2012.04.09 |
'신고 수' 노출 함수 및 신고시 게시글 이동팁 [11] | 인터니즈™ | 2012.07.03 |
로봇에 의하여 무한 회원가입이 발생할 때 제가 처리하는 방법 [3] | 별님왕자 | 2012.02.27 |
스마트폰이 없는뒤~!! 모바일페이지를 봐야 할경우 [15] | 토깽이2 | 2010.07.02 |
제로보드XE 1.4 -> 1.5 초간단 업그레이드 [10] | 행복돌이 | 2012.05.15 |
페이지 타입 바꾸는 방법 (문서, 위젯, 외부페이지) [5] | 빛의바다 | 2012.07.31 |
소셜로그인 이메일 입력시 SSL 사용 | 패시브 | 2012.07.27 |
게시판 메뉴에 새글 알림 표시 띄우기 [13] | 보거스내친구 | 2009.06.21 |
JwPlayer.swf 스킨 변경하기 [12] | 귀여운유니 | 2012.02.20 |
중국어(zh-CN) 포함한 다국어시 페이지모듈 버그 해결법 [1] | sejin7940 | 2012.07.26 |
virtualhost 사용에 관한 잡담 [3] | 인터니즈™ | 2012.06.15 |
로그인 정보 폼에 읽지 않은 쪽지 개수 보이기. [21] | 무얼까 | 2011.07.23 |
작성 글 보기에서 특정 모듈의 글 안나타나게 하기 | SCAC | 2012.07.21 |
1.5.1 최근 글 위젯에서 특수문자가 나가는 현상 [7] | Crom | 2012.02.12 |
관리자에서 그룹검색을 이용한 회원목록 제대로 안 보일때.. [2] | sejin7940 | 2012.06.01 |
바꾸는 방법도알려주셧으면 ㅜㅜ
저는왜
[root@BOXCLOUD ~]# httpd -v
Server version: Apache/2.2.15 (Unix)
Server built: Feb 13 2012 22:31:42
[root@BOXCLOUD ~]#