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. Apache: client denied by server configuration

    Date2010.10.25 ByADMINPLAY Views21665
    Read More
  2. mod_deflate 설정

    Date2011.03.18 ByADMINPLAY Views21236
    Read More
  3. 아파치(apache) 무단 링크 방지

    Date2011.06.18 ByADMINPLAY Views18977
    Read More
  4. Apache 2.2.17 (mod_url 하고 mod_rewrite 충돌)

    Date2011.08.18 ByADMINPLAY Views20396
    Read More
  5. Apache 2.2.21 패치 (mod_proxy_ajp 패치와 apache killer...

    Date2012.01.16 ByADMINPLAY Views19641
    Read More
  6. Apache Worker 방식의 이해 및 설정법

    Date2012.01.16 ByADMINPLAY Views16955
    Read More
  7. [Apache] MPM(Prefork VS Worker)

    Date2012.01.16 ByADMINPLAY Views19639
    Read More
  8. KeepAlive 설정 및 정의

    Date2012.01.16 ByADMINPLAY Views19891
    Read More
  9. Apache 로그레벨의 종류

    Date2012.01.16 ByADMINPLAY Views20844
    Read More
  10. apache cronolog를 이용한 Apache Log File 날짜 별로 생...

    Date2012.01.16 ByADMINPLAY Views23506
    Read More
  11. Apache mod_deflate

    Date2012.01.16 ByADMINPLAY Views23387
    Read More
  12. (간단한 팁) 우분투에 Apache2 설치하기 ( apt-get )

    Date2012.04.01 By로키 Views17603
    Read More
  13. 서비스 제한측면의 아파치 활용 예제

    Date2012.06.26 ByADMINPLAY Views30320
    Read More
  14. [정보] [Apache+PHP] Segmentation Fault가 발생할 경우

    Date2012.07.27 ByADMINPLAY Views47831
    Read More
  15. Apache 에서 최대 접속자 수 늘리기

    Date2012.07.30 ByADMINPLAY Views14405
    Read More
  16. h264 스트리밍 서버 구축(리눅스,아파치) (실시간 아님, ...

    Date2012.08.13 ByADMINPLAY Views17173
    Read More
  17. 아파치에서 멀티도메인 설정 방법

    Date2012.10.09 Byl2zeo Views20974
    Read More
  18. 우분투9.10 - Tomcat6 와 Apache2연동

    Date2012.10.31 ByADMINPLAY Views11402
    Read More
  19. apache가 worker 모드인지 prefork 모드로 동작하는지 확인

    Date2013.01.21 Byl2zeo Views17467
    Read More
  20. 웹페이지 가속 기술인 모드 페이지스피드(mod_pagespeed)...

    Date2013.01.27 Byl2zeo Views12145
    Read More
Board Pagination Prev 1 2 3 4 5 Next
/ 5

Copyright ADMINPLAY corp. All rights reserved.

abcXYZ, 세종대왕,1234

abcXYZ, 세종대왕,1234