인덱스웹

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

· 9년 전 · 1278

다음의 페이지를 대부분 참조했습니다. (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>

 

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

프로그램

+
제목 글쓴이 날짜 조회
9년 전 조회 1,050
9년 전 조회 1,068
9년 전 조회 1,154
9년 전 조회 1,039
9년 전 조회 1,033
9년 전 조회 1,156
9년 전 조회 1,159
9년 전 조회 1,130
9년 전 조회 1,199
9년 전 조회 1,063
9년 전 조회 1,057
9년 전 조회 1,144
9년 전 조회 1,172
9년 전 조회 1,152
9년 전 조회 1,120
9년 전 조회 1,344
9년 전 조회 1,240
9년 전 조회 1,140
9년 전 조회 1,221
9년 전 조회 1,137
9년 전 조회 1,086
9년 전 조회 1,432
9년 전 조회 1,029
9년 전 조회 1,249
9년 전 조회 1,272
9년 전 조회 1,266
9년 전 조회 1,230
9년 전 조회 1,015
9년 전 조회 1,251
9년 전 조회 1,286
9년 전 조회 1,220
9년 전 조회 1,182
9년 전 조회 1,033
9년 전 조회 1,323
9년 전 조회 1,267
9년 전 조회 1,812
9년 전 조회 1,115
9년 전 조회 1,275
9년 전 조회 1,226
9년 전 조회 1,636
9년 전 조회 1,678
9년 전 조회 1,417
9년 전 조회 1,267
9년 전 조회 1,309
9년 전 조회 1,669
9년 전 조회 1,256
9년 전 조회 1,462
9년 전 조회 1,317
9년 전 조회 1,401
9년 전 조회 1,279
9년 전 조회 1,556
9년 전 조회 1,261
9년 전 조회 1,245
9년 전 조회 1,199
9년 전 조회 1,308
9년 전 조회 1,187
9년 전 조회 1,276
9년 전 조회 1,403
9년 전 조회 1,193
9년 전 조회 1,236
9년 전 조회 1,215
9년 전 조회 1,358
9년 전 조회 1,185
9년 전 조회 1,306
9년 전 조회 1,151
9년 전 조회 1,215
9년 전 조회 1,054
9년 전 조회 1,275
9년 전 조회 1,135
9년 전 조회 1,139
9년 전 조회 1,190
9년 전 조회 1,151
9년 전 조회 1,169
9년 전 조회 1,103
10년 전 조회 1,483
10년 전 조회 1,558
10년 전 조회 1,508
10년 전 조회 1,444
10년 전 조회 1,246
10년 전 조회 1,384
10년 전 조회 1,539
10년 전 조회 1,213
10년 전 조회 1,562
10년 전 조회 1,519
10년 전 조회 1,877
10년 전 조회 1,486
10년 전 조회 1,693
10년 전 조회 1,319
10년 전 조회 1,466
10년 전 조회 1,182
10년 전 조회 1,231
10년 전 조회 1,312
10년 전 조회 1,302
10년 전 조회 1,417
10년 전 조회 1,237
10년 전 조회 1,256
10년 전 조회 1,215
10년 전 조회 1,177
10년 전 조회 1,243
10년 전 조회 1,092