메뉴 건너뛰기

조회 수 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
    번호 제목 날짜 조회 수
    37 웹로직 + 아파치 연동 2017.04.13 8685
    36 포그라운드, 백그라운드, nohup 정리 2017.04.18 9043
    35 & 실행과 nohup 실행 2017.04.18 7839
    34 웹로직 서버 시작 및 종료 스크립트 2017.04.28 8465
    33 리눅스서버 모니터링 rstatd 설치 2017.04.28 27358
    32 하루동안 실행된 쿼리 중 수행시간이 가장 긴 조회 쿼리 100개 2017.04.28 8042
    31 bitnami Redmine stack 업그레이드기 (1.2.x -> 2.0.x) 2017.07.05 6835
    30 웹서버(Nginx+FastCGI PHP)구축 및 성능 시험 2017.09.20 5530
    29 php_fpm 관련 자료 2017.09.20 5318
    28 user 계정관리 (useradd, userdel, groupadd, groupdel, usermod etc..) file 2017.11.22 5312
    27 rdate명령어 사용법과 옵션 file 2017.11.22 6300
    26 [CentOS 7] SSH 무작위 로그인 시도 막기 ( Fail2Ban ) 2018.03.28 69696
    25 사용자 관리, 사용자 생성 file 2018.09.21 1988
    24 메인 도메인으로 이동하기 2018.09.28 2108
    23 apache2 트래픽 모듈 mod_cband 사용법 2019.02.14 1129
    22 이미지 및 파일 무단링크 방지책 2019.02.14 1137
    21 Apache 동시접속자수 확인 2019.02.14 1929
    20 php_screw를 이용한 php 소스 암호화 하기 2019.02.14 1420
    19 리눅스 vsftpd 500 OOPS 에러 (CENTOS 7) file 2020.03.04 298
    18 CentOS 7에 Owncloud 10 설치 file 2020.12.21 3141
    Board Pagination Prev 1 ... 3 4 5 6 7 8 9 10 11 12 Next
    / 12

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

    © k2s0o1d4e0s2i1g5n. All Rights Reserved