메뉴 건너뛰기

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

단축키

Prev이전 문서

Next다음 문서

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

단축키

Prev이전 문서

Next다음 문서

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

아파치 동접자 제어



  • worker MPM은 여러 자식 프로세스가 각각 여러 쓰레드를 사용한다. 각 쓰레드는 한번에 한 연결을 담당한다. 일반적으로 worker는 prefork MPM 보다 적은 메모리를 사용하므로 통신량이 많은 서버에 적절하다.
    즉 동접자의 계산은 기본 프로세스가 16이고 Thread가 64일 경우

    16 * 64 = 1024(동접자)



    - 1.x.x 버전에서는 어디서 하는지 모르겠음



    - 2.x.x 버전일 경우

    아파치소스 2.x.x/server/mpm/worker/worker.c 에 있는

    #define DEFAULT_SERVER_LIMIT 16

    #define DEFAULT_THREAD_LIMIT 16

    여기서 16 -> 64로 하면 동접자 1024까지가 가능하다.

    위와 같이 소스 수정후 컴파일을 하고 나서 다시

    아파치설치폴더/conf/httpd.conf 의

    <IfModule worker.c>
    StartServers 2
    MaxClients 150
    MinSpareThreads 25
    MaxSpareThreads 75
    ThreadsPerChild 25
    MaxRequestsPerChild 0
    </IfModule>

    Max Clients 라고 씌여진 비슷한 부분을 1024로 바꾸고

    ThreadsPerChild 역시 64로 바꾸어 주면 되겠죠?

    아닌가? 아니면 말구









  • prefork MPM은 쓰레드가 한개인 자식 프로세스를 여러개 사용한다. 각 프로세스는 한번에 한 연결을 담당한다. 여러 시스템에서 prefork의 속도는 worker와 비슷하지만, 더 많은 메모리를 사용한다. 다음과 같은 상황에서 쓰레드를 사용하지 않는 prefork 방식이 worker에 비해 이점을 가진다: 쓰레드에 안전하지 (thread-safe) 않은 제삼자가 만든 모듈을 사용할 수 있고, 쓰레드 디버깅 지원이 빈약한 플래폼에서 쉽게 디버깅할 수 있다.


    - 1.x.x 버전일 경우

    아파치소스 1.x.x/src/include/httpd.h 에 있는

    #define HARD_SERVER_LIMIT 256

    여기서 256 -> 1024로 하면 동접자 1024까지가 가능하다.

    위와 같이 소스 수정후 컴파일을 하고 나서 다시

    아파치설치폴더/conf/httpd.conf 의

    Max Clients 라고 씌여진 비슷한 부분을 1024로 바꾸면 된다.



    - 2.x.x 버전일 경우

    아파치소스 2.x.x/server/mpm/prefork/prefork.c 에 있는

    #define DEFAULT_SERVER_LIMIT 256

    여기서 256 -> 1024로 하면 동접자 1024까지가 가능하다.

    위와 같이 소스 수정후 컴파일을 하고 나서 다시

    아파치설치폴더/conf/httpd.conf 의

    <IfModule prefork.c>
    StartServers 5
    MinSpareServers 5
    MaxSpareServers 10
    MaxClients 150
    MaxRequestsPerChild 0
    </IfModule>

    Max Clients 라고 씌여진 비슷한 부분을 1024로 바꾸면 된다.


  • List of Articles
    번호 제목 날짜 조회 수
    237 split 명령어 (파일 나누기) 2021.03.26 76713
    236 [CentOS 7] SSH 무작위 로그인 시도 막기 ( Fail2Ban ) 2018.03.28 69707
    235 tomcat - server.xml 설정 file 2017.03.11 67360
    234 리눅스서버 모니터링 rstatd 설치 2017.04.28 27358
    233 fdisk로 파티션 삭제하기 2015.06.10 26046
    232 fdisk로 파티션 삭제하기 2015.06.09 21723
    231 CentOS6.6+httpd2.4.16+Mariadb10.0.20+php5.6.11 Source 설치.... file 2016.09.25 14749
    230 bash 스크립트에서 네트워크 정보 확인하기 2014.02.27 14282
    229 원격 접속 FreeNX (NOMACHINE) 설치/접속 (vnc 보다 훨 2014.02.27 12307
    228 리눅스 읽기전용 파일시스템 / 파일 입/출력 오류 2016.07.22 12175
    227 Centos7 64bit 웹서버 만들기-PHP설치 CAP5 file 2015.07.17 11979
    226 php-5.2.17 make시에 오류 발생 make: *** [ext/dom/node.lo] 오류 1 2016.03.18 10746
    225 이온큐브로더(ioncube) 설치 매뉴얼 2016.03.18 10391
    224 CentOS 7 에 아파치(httpd) 설치 2015.07.16 10304
    223 웹서버 모니터링 툴 awststs 2014.03.26 10269
    222 파일 속성 명령어 : chattr, lsattr 2014.02.27 9619
    221 libphp5.so: undefined symbol: unixd_config 2016.03.18 9577
    220 iptable에서 TCP SYN Flooding 차단 설정 2014.02.27 9555
    219 [CentOS 6.5] Tomcat 설치 및 구동 file 2017.03.11 9483
    218 MySQL Linux Port 방화벽 설정(3306) file 2017.03.11 9470
    Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 12 Next
    / 12

    하단 정보를 입력할 수 있습니다

    © k2s0o1d4e0s2i1g5n. All Rights Reserved