메뉴 건너뛰기

조회 수 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
    번호 제목 날짜 조회 수
    117 rsync 와 ssh 를 이용한 네트워크 백업하기 2014.02.27 7747
    116 rsync ssh를 이용한 서버 백업 2016.03.18 9006
    115 root 계정 su 명령 제한 file 2023.01.20 137
    114 Root Disk를 Mirroring하는 방법 2016.07.22 8417
    113 Rocky Linux 8에 docker 설치하기 file 2024.04.23 0
    112 rdate명령어 사용법과 옵션 file 2017.11.22 6300
    111 qmail 587 포트 추가 2014.03.26 7388
    110 Proftp 설치 2014.03.26 7022
    109 php_screw를 이용한 php 소스 암호화 하기 2019.02.14 1420
    108 php_fpm 관련 자료 2017.09.20 5318
    107 PHPIZE를 이용한 openSSL PHP 확장 모듈 설치 2016.09.11 8063
    106 php.ini 파일에서 timezone 설정 2015.07.16 7759
    105 php-mbstring 설치 2015.07.16 7776
    104 PHP-5.3 이상 Zend 설치 2015.07.30 8698
    103 php-5.2.17 make시에 오류 발생 make: *** [ext/dom/node.lo] 오류 1 2016.03.18 10746
    102 php 리다이렉트 2016.03.18 8302
    101 php sockets 동적 모듈 설치 ( php socket ) 2016.03.18 8324
    100 php http include 2016.03.18 7685
    99 OpenSSH chroot 설정 file 2014.02.27 8742
    98 Nikto - 웹 취약점 스캐너 도구 file 2016.04.22 9232
    Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 12 Next
    / 12

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

    © k2s0o1d4e0s2i1g5n. All Rights Reserved