인덱스웹

서버 동시접속자 설정 변경하기

· 10년 전 · 1871

다음의 페이지를 대부분 참조했습니다. (http://www.zarafa.com/wiki/index.php/Apache_tuning)

 

 

- http 웹페이지는 stateless(connectionless) 입니다. 즉 페이지 불러올 때에만 서버와 연결하고 다 불러와지면 연결을 끊습니다.

 

- 1개의 연결당 평균 메모리 소모량은 20MB 입니다. (라엘이가 관리하는 여러서버의 평균값을 내보았음)

 

- Ubuntu Apache 의 기본 동시접속자 제한은 150개 입니다. 1000개의 동시접속이 연결되면 150개는 즉시 처리진행되고, 나머지 850개는 대기열에서 대기하다가 차례대로 처리됩니다.

 

 

 

1> 서버 연결당 얼마나 메모리를 소모하는지 확인

 

#ps -ylC apache2 | awk '{x += $8;y += 1} END {print "Apache Memory Usage (MB): "x/1024; print "Average Proccess Size (MB): "x/((y-1)*1024)}'

 

 

 

2> 서버에 여유 메모리 자원이 얼마나 있는지 확인

 

서버를 재부팅한 후에 아파치를 종료후 서버의 메모리를 확인해본다.

# free -m

 



3> 하드웨어 자원을 고려한 가용 동시연결수 계산

 

여유 메모리 / 1연결당 메모리     하면 된다.

 

2000MB free memory 가 있고, 1연결당 20MB 를 사용한다면 = 100개의 동시연결 가능. (300~500 동시접속자 처리가능)

 

 


4> 사이트의 필요 동시연결수 계산

 

450명의 사용자가 있고 3초주기로 페이지 이동이 일어난다고 가정하자. 페이지 출력 실행시간은 2초라고 가정하자.

 

필요 동시연결수 = 450 / 3 * 2 = 300

 

 

 

5> 동시연결수 설정 변경.

 

# vi /etc/apache2/mods-available/mpm_prefork.conf

 

MaxRequestWorkers 값을 수정해야 합니다.

 

ServerLimit 라는 옵션의 기본값이 256이기 때문에 MaxRequestWorkers 값이 256보다 작으면 따로 적을 필요가 없으며, 256보다 크면 그와 같은 값으로 ServerLimit 도 설정해야 합니다.

 

동시연결 제한 300 예제 설정법.

 

<IfModule mpm_prefork_module>

    StartServers 5

    MinSpareServers 5

    MaxSpareServers 10

    MaxRequestWorkers 300

    ServerLimit 300

    MaxConnectionsPerChild 0

</IfModule>

 

|
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

태그 필터 (최대 3개) 전체 개발자 소스 기타 mysql 팁자료실 javascript php linux flash 정규표현식 jquery node.js mobile 웹서버 os 프로그램 강좌 썸네일 이미지관련 도로명주소 그누보드5 기획자 견적서 계약서 기획서 마케팅 제안서 seo 통계 서식 통계자료 퍼블리셔 html css 반응형 웹접근성 퍼블리싱 표준화 반응형웹 홈페이지기초 부트스트랩 angularjs 포럼 스크린리더 센스리더 개발자톡 개발자팁 퍼블리셔톡 퍼블리셔팁 기획자톡 기획자팁 프로그램강좌 퍼블리싱강좌
+
제목 글쓴이 날짜 조회
9년 전 조회 1,737
9년 전 조회 1,714
9년 전 조회 1,779
9년 전 조회 1,670
9년 전 조회 1,661
9년 전 조회 1,785
9년 전 조회 1,801
9년 전 조회 1,730
9년 전 조회 1,833
9년 전 조회 1,747
9년 전 조회 1,688
9년 전 조회 1,856
9년 전 조회 1,763
9년 전 조회 1,736
9년 전 조회 1,766
9년 전 조회 2,037
9년 전 조회 1,892
9년 전 조회 1,805
9년 전 조회 1,941
9년 전 조회 1,786
9년 전 조회 1,757
9년 전 조회 2,078
9년 전 조회 1,687
9년 전 조회 1,878
9년 전 조회 1,926
9년 전 조회 1,847
9년 전 조회 1,941
9년 전 조회 1,657
9년 전 조회 1,890
9년 전 조회 1,972
9년 전 조회 1,878
9년 전 조회 1,861
9년 전 조회 1,716
9년 전 조회 1,951
9년 전 조회 1,924
9년 전 조회 2,450
9년 전 조회 1,804
9년 전 조회 1,923
9년 전 조회 1,890
9년 전 조회 2,275
9년 전 조회 2,344
9년 전 조회 2,082
9년 전 조회 1,910
9년 전 조회 1,960
9년 전 조회 2,312
9년 전 조회 1,845
10년 전 조회 2,106
10년 전 조회 1,898
10년 전 조회 2,018
10년 전 조회 1,872
10년 전 조회 2,132
10년 전 조회 1,833
10년 전 조회 1,809
10년 전 조회 1,805
10년 전 조회 1,892
10년 전 조회 1,843
10년 전 조회 1,842
10년 전 조회 1,979
10년 전 조회 1,761
10년 전 조회 1,794
10년 전 조회 1,828
10년 전 조회 1,947
10년 전 조회 1,786
10년 전 조회 1,922
10년 전 조회 1,685
10년 전 조회 1,792
10년 전 조회 1,570
10년 전 조회 1,828
10년 전 조회 1,609
10년 전 조회 1,671
10년 전 조회 1,771
10년 전 조회 1,660
10년 전 조회 1,695
10년 전 조회 1,646
10년 전 조회 2,062
10년 전 조회 2,065
10년 전 조회 2,059
10년 전 조회 2,014
10년 전 조회 1,798
10년 전 조회 1,923
10년 전 조회 2,075
10년 전 조회 1,782
10년 전 조회 2,077
10년 전 조회 2,030
10년 전 조회 2,421
10년 전 조회 2,031
10년 전 조회 2,242
10년 전 조회 1,860
10년 전 조회 2,016
10년 전 조회 1,700
10년 전 조회 1,789
10년 전 조회 1,824
10년 전 조회 1,830
10년 전 조회 1,992
10년 전 조회 1,763
10년 전 조회 1,781
10년 전 조회 1,800
10년 전 조회 1,696
10년 전 조회 1,752
10년 전 조회 1,558