Skip to content

조회 수 19639 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

MPM : Multi-Processing Modules, MPMs (다중 처리 모듈)

 

- 여러 방식이 존재하지만, 대표적으로 Prefork 와 Worker 방식을 많이 사용함.

 

 

Prefork

- 쓰레드가 한개의 자식 프로세스를 여러개 사용하며 각 프로세스는 한번에 한 연결을 담당

- worker보다 좀 더 많은 메모리를 사용함

- 프로세스간 메모리를 직접 공유하지 않으므로, 메모리 공간이 독립적이어서 안정적임

 

 

prefork.jpg  

 

 

 

 

설정 예
<IfModule mpm_prefork_module>
StartServers 5
MinSpareServers 5
MaxSpareServers 10
MaxClients 150
MaxRequestsPerChild 0
</IfModule>


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

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

MaxClient
초기 시작시 실행가능한 최대 아파치 자식 프로세스의 개수를 지정
*worker방식의 MaxClient 와는 전혀 다른 의미임.

MaxReqeustPerChild
클라이언트들의 요청 개수를 제한. 만약 자식 프로세스가 이 값만큼의 클라이언트 요청을 받았다면 이 자식 프로세스는 자동으로 죽게 된다. 0 일 경우엔 무한대

 

 

 

 

Worker

- 자식 프로세스들이 각각 여러 쓰레드를 사용하며, 각 쓰레드는 한번에 한 연결을 담당

- Prefork보다 메모리 사용량이 적음. 통신량이 많은 서버에 적절

- 쓰레드 간에 메모리 공간을 공유함. 리소스 경합이 발생하지 않도록 주의 필요.

 

worker.jpg  

 

 

 

설정 예
<IfModule mpm_worker_module>
StartServers 2
MaxClients 150
MinSpareThreads 25
MaxSpareThreads 75
ThreadsPerChild 25
MaxRequestsPerChild 0
</IfModule>

   

옵션 설명
StartServers
시작시에 생성되는 서버 프로세스의 개수

MaxClient
동시 연결가능한 클라이언트의 최대 개수.

MinSpareThreads
최소 thread 개수

MaxSpareThreads
최대 thread개수

ThreadPerChild
개별 자식 프로세스가 지속적으로 가질 수 있는 Thread의 개수

MaxRequestPerChild
자식 프로세스가 서비스할 수 있는 최대 요청 개수

 

 

 

 

 

 

* 확장성이 필요한 사이트는 worker방식을 택하고, 안정성과 오래된 소프트웨어와 호환성이 필요한 사이트는 Prefork를 사용하기도 한다.

* Linux의 경우, Prefork 방식이 Default이며, Worker방식을 사용하기 위해서는 설치시에 -with-mpm=worker 옵션을 주어야 한다.

  ex) ./configure --prefix=/home/paint/apache-2.2.15 --enable-mods-shared=all --enable-module=so --enable-so  --with-mpm=worker


  1. No Image 08Oct
    by ADMINPLAY
    2008/10/08 by ADMINPLAY
    Views 15933 

    사이트가 느려지는 현상 점검

  2. No Image 26Nov
    by ADMINPLAY
    2009/11/26 by ADMINPLAY
    Views 14017 

    사용자 인증

  3. No Image 30Sep
    by ADMINPLAY
    2009/09/30 by ADMINPLAY
    Views 14691 

    브라우저 접속 제한하기

  4. No Image 18Jul
    by ADMINPLAY
    2009/07/18 by ADMINPLAY
    Views 15668 

    매일 자정에 트래픽 초기화 하기

  5. No Image 22Sep
    by ADMINPLAY
    2010/09/22 by ADMINPLAY
    Views 20684 

    리눅스 개인계정 로딩시 틸드(~)기호없이 그냥 사용

  6. 리눅스 APM 소스설치시 에러에 대한 대처

  7. No Image 27Jul
    by ADMINPLAY
    2012/07/27 by ADMINPLAY
    Views 47833 

    [정보] [Apache+PHP] Segmentation Fault가 발생할 경우

  8. No Image 10May
    by ADMINPLAY
    2009/05/10 by ADMINPLAY
    Views 13767 

    [자료] 웹사이트 성능개선 위한 커널 튜닝 사례

  9. No Image 07May
    by ADMINPLAY
    2009/05/07 by ADMINPLAY
    Views 21037 

    [LINUX] Apache 2.2 + mod jk 1.2 + Tomcat 5.x 연동

  10. [Apache] MPM(Prefork VS Worker)

  11. No Image 09Jan
    by ADMINPLAY
    2015/01/09 by ADMINPLAY
    Views 7280 

    [Apache] 2.4 버전에서 403 에러시 [authz_core:error AH01630: client denied by server configuration]

  12. xcache 설치 (xcache-1.2.2.tar.gz)

  13. WAS 란? WAS 뭐에요?

  14. No Image 05Aug
    by ADMINPLAY
    2009/08/05 by ADMINPLAY
    Views 21795 

    Unclean shutdown of previous Apache run?

  15. No Image 09Sep
    by ADMINPLAY
    2013/09/09 by ADMINPLAY
    Views 8767 

    tomcat 에서 OutOfMemory에러가 발생할때

  16. No Image 06Jun
    by ADMINPLAY
    2009/06/06 by ADMINPLAY
    Views 14617 

    Tomcat 4 과 Apache 2 연동

  17. No Image 15Oct
    by ADMINPLAY
    2009/10/15 by ADMINPLAY
    Views 14176 

    SSL 인증서 발급 후 SSL mode 시작시 두 개의 패스워드 입력해야할 때 패치방법

  18. No Image 26Nov
    by ADMINPLAY
    2009/11/26 by ADMINPLAY
    Views 18254 

    squid 로 웹서버 가속하기..---== 강추 ==---

  19. No Image 18Jan
    by ADMINPLAY
    2014/01/18 by ADMINPLAY
    Views 7385 

    SetEnvIf 지시어 설명 (mod_setenvif)

  20. No Image 26Nov
    by ADMINPLAY
    2009/11/26 by ADMINPLAY
    Views 14217 

    rewrite 모듈을 이욜한 서브도메인으로 홈페이지 운영하기

Board Pagination Prev 1 2 3 4 5 Next
/ 5

Copyright ADMINPLAY corp. All rights reserved.

abcXYZ, 세종대왕,1234

abcXYZ, 세종대왕,1234