문서의 선택한 두 판 사이의 차이를 보여줍니다.
양쪽 이전 판 이전 판 다음 판 | 이전 판 | ||
apache:performance [2012/08/19 19:27] kwon37xi |
apache:performance [2014/05/28 12:50] (현재) kwon37xi |
||
---|---|---|---|
줄 1: | 줄 1: | ||
====== Apache Web Server Performance ====== | ====== Apache Web Server Performance ====== | ||
+ | * [[http:// | ||
+ | * 성능 위주로 가려면 MPM Worker 방식으로 가야한다. 하지만 몇몇모듈(PHP 등)이 작동하지 않는다. | ||
* [[http:// | * [[http:// | ||
* [[http:// | * [[http:// | ||
* [[http:// | * [[http:// | ||
+ | * [[http:// | ||
+ | * [[http:// | ||
+ | ===== worker/ | ||
+ | * [[http:// | ||
+ | * [[http:// | ||
+ | * **prefork** 방식은 1 프로세스 1 쓰레드 방식으로, | ||
+ | * **worker** 방식은 1 프로세스 다중 쓰레드 방식으로, | ||
+ | * 정적 리소스에 대한 평면적인 성능만 따지면 worker 방식이 prefork보다 2배 정도 빠르다. | ||
===== MaxClients 설정 ===== | ===== MaxClients 설정 ===== | ||
* [[http:// | * [[http:// | ||
- | + | * Linux의 swappiness 설정과 연계해서 Apache 의 MaxClients를 설정해야한다.(그외 다른 작업도 마찬가지) | |
- | + | * 시스템의 전체 메모리 용량이 Swap을 발생시키는 용량이 되지 않도록 조정해야 한다. | |
+ | * Client 당 하나씩 생성되는 httpd 프로세스의 갯수는 모듈 로딩 상황에 따라 다르지만 보통 4mb 정도로 계산해본다.(실측해볼 것) | ||
+ | * 따라서 **(Swap비적용 대상 메모리량 - 시스템과 다른 애플리케이션이 차지하는 메모리량) /4(mb)** 개 정도로 MaxClients를 설정한다. |