Computer ???
No. | 100 | ||||
Name. | swindler | ||||
Subject. | Apache 2 Tuning | ||||
Main Cate. | Linux | ||||
Sub Cate. | |||||
Date. | 2005-08-09 10:48 | ||||
Hit. | 5696 (211.109.70.164) | ||||
File. | |||||
웹서버 성능 Test 프로그램 1. ab : Apache HTTP server Benchmarking tool ab -c 1000 -n 1000 -t 10 http://xxx.com/ 2. Httperf www.hpl.hp.com/research/linux/httperf 에서 다운로드 httperf --server 111.222.33.44 --port 80 --rate 1000 --num-conns 20000 -hog 해당 서버에 1초에 1000개씩 총 20000개의 접속 시도 3. Flood Apache Configure - Timeout : 접속된 클라이언트가 서버에 아무런 요청이 없을때 어느 정도 시간이 지나면 연결을 끊을지 초단위로 설정 - MaxClients - KeepAlive : 아파치의 한 프로세스가 접속한 클라이언트의 요청 작업을 계속해서 처리할 것인지를 결정, On으로 해야 MaxKeepAliveRequests 와 KeepAliveTimeout 이 유효하게 된다. - MaxKeepAliveRequests : 100으로 설정하면 100번의 요청을 처리한후 해당 프로세스는 죽고 그 다음 프로세스가 이어서 처리한다. 방문자가 많은 홈페이지라면 이 값을 조금 올리는 것이 좋다. - KeepAliveTimeout : 해당 시간동안 클라이언트가 아무런 요청이 없으면 연결을 끊는다. - StartServers - MinSpareServers - MaxSpareServers - MaxRequestsPerChild : 하나의 프로세스당 최대로 처리할 수 있는 방문자의 요청 횟수이다. 서버 사양이 좋다면 이 값을 올리는 것이 시스템의 부하 조절과 자원 낭비를 방지한다. - HostnameLookups : 로그 기록이 IP가 아니라 hostname 으로 적는다. 당연히 DNS 검색을 하기 위해서 상당히 부하가 걸린다. 필요한 경우 logresolve 같은 프로그램으로 뒤에 처리하는 것이 낫다. - FollowSymLinks, SymLinksIfOwnerMatch : 후자의 경우 시스템 호출을 한번 더 하기 때문에 느리다. 물론 symbolic link 를 허용하는 자체가 보안상 좋지는 않다. - AllowOverride : 디렉토리마다 .htaccess 열기를 시도하므로 가능하면 사용하지 않는 것이 좋다. - EnableMMAP : 커널에서 메모리 맵핑을 지원한다면 아파치가 파일을 읽을때 메모리 맵핑한다. 그러나 안정성에 문제가 있을 수 있고, 메모리 맵핑이 오버헤드를 가져오는 경우가 발생한다. - EnableSendfile : OS가 sendfile을 지원하면 정적 파일을 전송하는 경우 직접 읽지 않고 바로 전송할 수 있다. [바로가기 링크] : http://coolx.net/cboard/computer/100 |
|||||
|
|||||
[Modify] [Delete] | [Reply] [List] |