제 서버를 괴롭혀주세요...

RisaPapa의 이미지

지금 윈도우2000에서 아파치2의 서버안정성 테스트하고 있는데
협조를 구하고자 글을 올립니다.

작업 하시면서 코맨드 창이나 쉘에서 다음 컴팬드를 복사해서 넣어주시고
실행을 한번씩만 해주시면 고맙겠습니다.

ab -n 100000 -c 5 http://open.spacetag.jp/fcgi-bin/echo.fcgi

저는 백만번의 리퀘스트로 해서 지금 돌려놓고 있습니다.

지금까지 아무리 부하가 걸리는 테스트를 해도 한번도 서버가 다운된 적이
없는데 한번 서버를 아주 괴롭혀서 다운시켜보고 싶습니다.

서버의 사양은 Pentium III 1.3GHZ(싱글)/Memory 512M 입니다. 하드는
Raid5의 스카지드라이브입니다. OS는 Win2000 Server 영어버전이고
서버팩키지는 http://bbs.kldp.org/viewtopic.php?p=169040 에서
소개드린 팩키지를 사용하고 모든 서비스가 작동되고 있는 상태입니다.
그리고 위의 FastCGI 프로세스는 4개로 작동되고 있습니다. 서버에
연결된 회선은 광케이블 100MBPS입니다.

현재 작동되고 있는 서버의 사진도 함께 첨부합니다. 위에서 4번째 랙에 있는
서버입니다. 다른 서버에는 모두 리눅스가 인스톨되어 있습니다.

감사합니다.

File attachments: 
첨부파일 크기
Image icon server.jpg40.24 KB
offree의 이미지

먼저 선빵(?) 날립니다.

죽지 않기를 바래야 겠지요 ^^

ps. 제대로 가는지 모르겠네요. 방화벽에 막히고 있는지도..

사용자가 바꾸어 나가자!!

= about me =
http://wiki.kldp.org/wiki.php/offree , DeVlog , google talk : offree at gmail.com

RisaPapa의 이미지

offree wrote:
먼저 선빵(?) 날립니다.

죽지 않기를 바래야 겠지요 ^^

ps. 제대로 가는지 모르겠네요. 방화벽에 막히고 있는지도..

감사합니다.

100만번 리퀘스트의 결과는 아래와 같습니다. 그런데 수치가 이상하군요...
일단 억세스되어 전송이 완료되었을 경우 1번의 카운트가 되도록 되어 있는데
카운트가 됨에도 불구하고 마이너스로 되는 것도 있군요????
아마 웹에서 확인하면 아시겠지만 처음에 접속을 하면 다음과 같은데

HTTP_ACCEPT=image/gif, image/x-xbitmap, image/jpeg, \
image/pjpeg, application/vnd.ms-powerpoint, \
application/vnd.ms-excel, application/msword, \
application/x-shockwave-flash, application/pdf, */*

두번째 부터는

HTTP_ACCEPT=*/*

로 변화 되기 때문에 웹페이지의 사이즈가 처음 접속했을 때와
달라서 이상한 결과가 나온 듯합니다.

일단은 중요한 숫자는
Requests per second: 195.02 [#/sec] (mean)
인데 그런데로 만족할 만한 숫자입니다.

리눅스와도 비슷한 성능입니다.

지금부터 자바서버(톰캣)를 테스트해 더괴롭혀 보려고합니다.

ab -n 10000000 -c 50 http://open.spacetag.jp/index.jsp

천만번의 리퀘스트와 클라이언트 50으로 돌려놓고 외출이나 해야겠습니다.
이것은 내일 아침에나 어느정도 결과가 나올 것 같군요..

Microsoft Windows [Version 5.2.3790]
(C) Copyright 1985-2003 Microsoft Corp.

C:\>ab -n 1000000 -c 1 http://open.spacetag.jp/fcgi-bin/echo.fcgi
This is ApacheBench, Version 2.0.40-dev <$Revision: 1.121.2.8 $> apache-2.0
Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Copyright (c) 1998-2002 The Apache Software Foundation, http://www.apache.org/

Benchmarking open.spacetag.jp (be patient)
Completed 100000 requests
Completed 200000 requests
Completed 300000 requests
Completed 400000 requests
Completed 500000 requests
Completed 600000 requests
Completed 700000 requests
Completed 800000 requests
Completed 900000 requests
Finished 1000000 requests


Server Software:        Apache/2.0.49
Server Hostname:        open.spacetag.jp
Server Port:            80

Document Path:          /fcgi-bin/echo.fcgi
Document Length:        2320 bytes

Concurrency Level:      1
Time taken for tests:   5127.718750 seconds
Complete requests:      1000000
Failed requests:        997272
   (Connect: 0, Length: 997272, Exceptions: 0)
Write errors:           0
Total transferred:      -1773160063 bytes
HTML transferred:       -1972160063 bytes
Requests per second:    195.02 [#/sec] (mean)
Time per request:       5.128 [ms] (mean)
Time per request:       5.128 [ms] (mean, across all concurrent requests)
Transfer rate:          -337.69 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0    1   5.0      0     328
Processing:     0    3   6.8      0     828
Waiting:        0    2   6.8      0     828
Total:          0    4   7.8      0     843

Percentage of the requests served within a certain time (ms)
  50%      0
  66%      0
  75%     15
  80%     15
  90%     15
  95%     15
  98%     15
  99%     15
 100%    843 (longest request)

C:\>
offree의 이미지

제가 테스트한 결과 입니다.

This is ApacheBench, Version 2.0.40-dev <$Revision: 1.141 $> apache-2.0
Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Copyright (c) 1998-2002 The Apache Software Foundation, http://www.apache.org/
 
Benchmarking open.spacetag.jp (be patient)
Completed 10000 requests
Completed 20000 requests
Completed 30000 requests
Completed 40000 requests
Completed 50000 requests
Completed 60000 requests
Completed 70000 requests
Completed 80000 requests
Completed 90000 requests
Finished 100000 requests
 
 
Server Software:        Apache/2.0.49
Server Hostname:        open.spacetag.jp
Server Port:            80
 
Document Path:          /fcgi-bin/echo.fcgi
Document Length:        2322 bytes
 
Concurrency Level:      5
Time taken for tests:   2674.252131 seconds
Complete requests:      100000
Failed requests:        24993
   (Connect: 0, Length: 24993, Exceptions: 0)
Write errors:           0
Total transferred:      252124993 bytes
HTML transferred:       232224993 bytes
Requests per second:    37.39 [#/sec] (mean)
Time per request:       133.713 [ms] (mean)
Time per request:       26.743 [ms] (mean, across all concurrent requests)
Transfer rate:          92.07 [Kbytes/sec] received
 
Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:       54   66  55.5     65    3301
Processing:    57   66  12.3     66    2542
Waiting:       53   65   6.7     64     355
Total:        118  133  56.9    131    3372
 
Percentage of the requests served within a certain time (ms)
  50%    131
  66%    133
  75%    134
  80%    135
  90%    139
  95%    143
  98%    149
  99%    155
 100%   3372 (longest request)

위에서 말씀하신

Requests per second: 37.39 [#/sec] (mean)

이 부분은 네트웍 대역폭에 따라 다르겠죠?

다른 라인에서 한번 해볼까요?

사용자가 바꾸어 나가자!!

= about me =
http://wiki.kldp.org/wiki.php/offree , DeVlog , google talk : offree at gmail.com

smalljam의 이미지

지금 전체 네트웍을 사용할 수는 없구요.

오늘은 서버 한대에서 날리겠습니다.

과부하는 내일,IDC에 들어가는 참에 ,날리겠습니다.^^;

그리고, 리사파파님께서 공개했던, PostgreSQL은 잘쓰겠습니다.

마치 , 마침 필요하던 참인데,딱 들어맞게 공개되어서 너무 기뻤습니다.

한번도 뵌적은 없지만,항상 건강하시고, 하시는 일이 모두 잘되기를

기도하겠습니다.

오늘은 서버 한대에서 부하 가했지만,내일은 좀더 많은 서버에서
날리겠습니다.^^;결과입니다.

Quote:
[root@sysmon bin]# ./ab -n 100000 -c 5 http://open.spacetag.jp/fcgi-bin/echo.fcgi
This is ApacheBench, Version 1.3d <$Revision: 1.70 $> apache-1.3
Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Copyright (c) 1998-2002 The Apache Software Foundation, http://www.apache.org/

Benchmarking open.spacetag.jp (be patient)
Completed 10000 requests
Completed 20000 requests
Completed 30000 requests
Completed 40000 requests
Completed 50000 requests
Completed 60000 requests
Completed 70000 requests
Completed 80000 requests
Completed 90000 requests
Finished 100000 requests
Server Software: Apache/2.0.49
Server Hostname: open.spacetag.jp
Server Port: 80

Document Path: /fcgi-bin/echo.fcgi
Document Length: 2433 bytes

Concurrency Level: 5
Time taken for tests: 296.650 seconds
Complete requests: 100000
Failed requests: 99989
(Connect: 0, Length: 99989, Exceptions: 0)
Broken pipe errors: 0
Total transferred: 271768347 bytes
HTML transferred: 243200011 bytes
Requests per second: 337.10 [#/sec] (mean)
Time per request: 14.83 [ms] (mean)
Time per request: 2.97 [ms] (mean, across all concurrent requests)
Transfer rate: 916.12 [Kbytes/sec] received

Connnection Times (ms)
min mean[+/-sd] median max
Connect: 1 12 232.0 1 93001
Processing: 1 1 1.4 1 85
Waiting: 0 1 1.4 1 84
Total: 2 13 232.0 2 93003

Percentage of the requests served within a certain time (ms)
50% 2
66% 3
75% 3
80% 3
90% 3
95% 3
98% 3
99% 4
100% 93003 (last request)

핑은 가는데,결과를 보니, 응답 결과가 좀 이상하군요.
많은 분들이 , 테스트하고 있다는 느낌이...^^;

In the UNIX,
화일 시스템은 지평적인 공간 감각을 제공하며 ,
프로세스는 생명을 갖는 생명체와 같아보인다.
--BACH

RisaPapa의 이미지

offree wrote:
제가 테스트한 결과 입니다.

위에서 말씀하신

Requests per second: 37.39 [#/sec] (mean)

이 부분은 네트웍 대역폭에 따라 다르겠죠?

다른 라인에서 한번 해볼까요?

고맙습니다.

지금 이 서버에서도 미러로 파일을 다운로드하도록 되어 있는데 한국에서
다운로드할 때의 스피드가 ISP업체에 따라서 많이 차이가 납니다.

일본내에서는 초당 평균 4,5메가의 스피드가 나옵니다.

말씀하신대로 대역폭에 따라서 많이 차이가 있으리라고 생각합니다.

그리고 어제도 한번 톰캣의 테스트를 했는데 리눅스보다 훨씬 성능이
좋아서 오늘 다시 테스트해 보려고 합니다. 자바는 윈도우즈가 빠르다는
소문을 많이 듣는데 사실인 것같기도 합니다...

그외는 대체로 리눅스와 비슷합니다.

RisaPapa의 이미지

smalljam wrote:
지금 전체 네트웍을 사용할 수는 없구요.

오늘은 서버 한대에서 날리겠습니다.

과부하는 내일,IDC에 들어가는 참에 ,날리겠습니다.^^;

그리고, 리사파파님께서 공개했던, PostgreSQL은 잘쓰겠습니다.

마치 , 마침 필요하던 참인데,딱 들어맞게 공개되어서 너무 기뻤습니다.

한번도 뵌적은 없지만,항상 건강하시고, 하시는 일이 모두 잘되기를

기도하겠습니다.

오늘은 서버 한대에서 부하 가했지만,내일은 좀더 많은 서버에서
날리겠습니다.^^;결과입니다.

감사합니다.

이대로 놓아두고 어디까지 견디는지 한번 보고 싶습니다.
작년에는 펜티엄2 350MHZ에서 근10개월 정도 견디었는데
마누라가 제가 출장간사이에 전원 스위치를 눌러버려
더이상 테스트하지 않았는데 이번에는 정말로 마음 단단히
먹고 안정성과 내구성 테스트를 해보고 싶습니다.

RisaPapa의 이미지

yahoo1211 wrote:
본문에 오타네요. 1.3MHZ => 1.3Ghz

네, 그렇네요...

감사합니다.
전에 개발하던 컴퓨터는 기가급이 한대도 없다보니 습관이 되서...

현재 아래의 주소를 모두 천만 리퀘스트를 걸어 넣고 퇴근해야겠습니다.

http://open.spacetag.jp/phpenv.php
http://open.spacetag.jp/fcgi-bin/echo.fcgi
http://open.spacetag.jp/index.jsp
http://open.spacetag.jp/fcgi-bin/echo.fpl

일본은 내일도 휴일입니다. 그래서 화요일에 와서 확인하고
집에서도 몇개 걸어놓고 최대한 빨리 다운되도록 노력해보겠습니다.

offree의 이미지

내일이 무슨 날인가요?

기한없이 계속 테스트 하시는 것인가요?

그렇다면, 저도 틈나는데로 걸어놓도록 하겠습니다.

테스트 후에 리포트 올리구요.

사용자가 바꾸어 나가자!!

= about me =
http://wiki.kldp.org/wiki.php/offree , DeVlog , google talk : offree at gmail.com

RisaPapa의 이미지

offree wrote:
내일이 무슨 날인가요?

기한없이 계속 테스트 하시는 것인가요?

그렇다면, 저도 틈나는데로 걸어놓도록 하겠습니다.

테스트 후에 리포트 올리구요.

바다의 날(海の日)이라고 되있는데 빨간날짜군요.
빨간 날짜는 모두 쉬는 날이니 내일은 잠시 동경만의 바다를
구경이나 갔다 와야겠습니다.

서버의 안정성 테스트는 서버가 맛이가서 다운되는 날까지
모든 방법을 동원하여 서버를 괴롭히려고 합니다.

화요일날 와서는 KLDP에서도 사용하는 phpBB를 사용하여 괴롭혀
보려고 합니다. 데이터베이스는 PostgreSQL을 사용할 예정입니다.

지금도 계속 서버가 어떤 상황인가 보고 있는데 아직도 끄떡을
안하는군요. 이래가지고는 다운 시킬수가 없을 것 같다는 생각이
듭니다. 이번에는 데이터베이스 서버와 메일 서버를 동시에
괴롭히면서 테스트를 해야겠습니다.

RisaPapa의 이미지

대략 12시간만(오늘 아침 8시경)에 다운시키는데 성공했습니다....

그리고 페이지뷰는 200만에서 300만정도가 되지 않을까 생각됩니다.

어떤 상태로 다운이 되었는지 아직 모르겠지만 일단은 접속이 안되고
있습니다. 트랙픽 대역폭이 어제11시경에 20기가를 넘어갔는데
ISP업체에서 트래픽초과로 막아 두었을 지도 모른다는 생각도 들고
메모리가 얼마 안되 메모리 사용량 추가로 OS가 다운이 된것 같은
생각도 듭니다.

확인이 되는대로 결과에 대해서는 이곳에 글을 올리겠습니다.

RisaPapa의 이미지

아무것도 안했는데도 다시 서버가 살아났습니다.
자체에서 다시 리스타트를 했는가 봅니다....

다운된 결과를 한번 보려고 했더니 정말 왜이리 다운이 안되는지...

FastCGI는 4개의 프로세스별로 요구한 숫자가 기록이 되도록 되어 있는데
그 숫자가 그대로 유지되고 있습니다. 그걸보면 다운은 되지 않것 같습니다.

4개의 주소에 천만개의 벤치테스트를 걸어놓았는데 한개당 평균 100만이상
리퀘스트가 있었고 echo.fcgi는 가장 응답이 빠른데 어제 7시정도부터
현재까지 240만 이상의 페이지뷰를 기록하고 있습니다. 12시간정도에
한 400만 이상의 페이지뷰가 있지 않았나 생각됩니다.

offree의 이미지

어제 두군데서 ab 를 걸어놓았습니다.

대략 시간이 11-2 시 사이였을 것입니다.

다운은 아닌가보군요. 더 시도(?)를 해봐야 겠네요.

사용자가 바꾸어 나가자!!

= about me =
http://wiki.kldp.org/wiki.php/offree , DeVlog , google talk : offree at gmail.com

iamice의 이미지

회선이 느려서 얼마나 부하를 줬는지 모르겠습니다.

USER AGENT 에 Cracker 라고 찍어서 DOS공격을 해봤습니다.

수십개의 스레드로 공격하니까...

한참 있다 제 자식들이 "disconnected by pear" 라는 비명을 지르고 죽어버리더군요..

핑 날려보니 한참동안 응답이 없었습니다..

좀있다 다시 핑 들어가던데... 자동으로 살아나나요? -0-...

다운은 안된거 같고... 얼마나 부하가 걸렸는지 궁금하네요 ^^;;

pynoos의 이미지

끈질기군요..
네 툴로 부하를 줬는데(대단한 툴은 아닙니다만).. 초당 320개의 접속요청을 받아내는군요..

$ ./test_client 202.216.247.126 80 100 /fcgi-bin/echo.fcgi
Elapsed       : 1 sec.
Try           : 774
Connected     : 381
Error         : 35
Try/sec       : 774.0/sec.
Connected/sec : 381.0/sec.

Elapsed       : 2 sec.
Try           : 1116
Connected     : 679
Error         : 35
Try/sec       : 558.0/sec.
Connected/sec : 339.5/sec.

Elapsed       : 3 sec.
Try           : 1412
Connected     : 993
Error         : 35
Try/sec       : 470.6/sec.
Connected/sec : 331.0/sec.

Elapsed       : 4 sec.
Try           : 1990
Connected     : 1483
Error         : 284
Try/sec       : 497.5/sec.
Connected/sec : 370.7/sec.

Elapsed       : 5 sec.
Try           : 2485
Connected     : 1909
Error         : 314
Try/sec       : 497.0/sec.
Connected/sec : 381.8/sec.

Elapsed       : 6 sec.
Try           : 2628
Connected     : 1973
Error         : 379
Try/sec       : 438.0/sec.
Connected/sec : 328.8/sec.

Elapsed       : 7 sec.
Try           : 2953
Connected     : 2231
Error         : 397
Try/sec       : 421.8/sec.
Connected/sec : 318.7/sec.

Elapsed       : 8 sec.
Try           : 3312
Connected     : 2569
Error         : 404
Try/sec       : 414.0/sec.
Connected/sec : 321.1/sec.

Elapsed       : 9 sec.
Try           : 3910
Connected     : 3142
Error         : 569
Try/sec       : 434.4/sec.
Connected/sec : 349.1/sec.

Elapsed       : 10 sec.
Try           : 4492
Connected     : 3526
Error         : 696
Try/sec       : 449.2/sec.
Connected/sec : 352.6/sec.
RisaPapa의 이미지

iamice wrote:
회선이 느려서 얼마나 부하를 줬는지 모르겠습니다.

USER AGENT 에 Cracker 라고 찍어서 DOS공격을 해봤습니다.

수십개의 스레드로 공격하니까...

한참 있다 제 자식들이 "disconnected by pear" 라는 비명을 지르고 죽어버리더군요..

핑 날려보니 한참동안 응답이 없었습니다..

좀있다 다시 핑 들어가던데... 자동으로 살아나나요? -0-...

다운은 안된거 같고... 얼마나 부하가 걸렸는지 궁금하네요 ^^;;

그냥 내버려 두고 있습니다. 아무것도 하지 않고 있습니다.
WebDAV로 접속해서 로그 파일 사이즈가 얼마나 되는지 알아 보는
정도만 체크하고 있습니다. 그리고 펄로 살아 있는 프로세스를
체크하는 프로그램이 있는데 그것을 불러내서 살아 있는지만 체크합니다.

워낙 많은 모듈이 로드되어 있기 때문에 프로세스가 자동으로 되살아
나는데는 20초정도가 소요되는 듯합니다. 일단은 echo.fcgi에서
Request number 1602389, Process ID: 2208 처럼 요구된 숫자가
리셋 되지 않은 상태라면 서버는 다운되지 않고 계속 살아 있다는
증거입니다.

저도 DOS공격등 모든 수단을 동원해서 공격을 했지만 20초정도 접속이
중단되었다가 다시 자동으로 살아 납니다. 정말 꾼질기더군요.

실은 지금 억세스 로그만해도 20기가가 넘어 갑니다만 그대로 죽지않고
잘 돌아 가고 있습니다.

노랑배의 이미지

징하군요..ㅋㅋ 대단함다..

여행정보 - www.herekorea.com