2010-01-18 1 views
6

최근 라이트 프론트 엔드 웹 서버와 함께 사용할 경우 Django Static Generator의 장점을 강조하여 최근에 this one과 같은 기사가 많이 있습니다. 그것은 나에게 많은 의미가 있습니다.Django Static Generator & Nginx가 보스 스피드를주는 이유는 무엇입니까?

그러나 다른 사람들이보고하는 결과 - 초당 수천 건의 요청 -과 같은 결과는 얻을 수 없으며 그 이유를 알 수 없습니다.

나는 내 신문 웹 사이트의 재 설계를 시작할 준비가되어있다. 지금 테스트 서버에서 Static Generator를 사용하고 있습니다. 나는 특정 정적 페이지에 아파치 벤치를 실행할 때, 나는 꽤 비참한 결과를 얻을 : 포위가 켜져있는 동안 내가 서버에 top를보고 있어요, 나는 그것의 것을 볼 수 있습니다

ab -c 10 -n 1000 http://journal.streamlister.com/news/

Concurrency Level:  10 
Time taken for tests: 53.011 seconds 
Complete requests:  1000 
Failed requests:  0 
Write errors:   0 
Total transferred:  21281212 bytes 
HTML transferred:  21067360 bytes 
Requests per second: 18.86 [#/sec] (mean) 
Time per request:  530.107 [ms] (mean) 
Time per request:  53.011 [ms] (mean, across all concurrent requests) 
Transfer rate:   392.04 [Kbytes/sec] received 

아파치 나 데이터베이스 서버를 전혀 공격하지 않습니다. 실제로 캐시 된 페이지를 제공합니다. Nginx가 실행 중이지만 메모리 사용량이 2 %를 초과하지 않습니다. CPU는 약 95 % 유휴 상태로 남아 있습니다.

내가 뭘 잘못하고 있니? 어떻게 든 nginx를 잘못 구성했을 수 있습니까? 내 기본 구성 파일은 아래에 붙여 넣습니다. 이 사이트에만 해당되는 포함은 Static Generator home page에있는 샘플 구성의 사본입니다. Slicehost 256k 슬라이스에서 우분투 9.10을 실행 중입니다.

user not_my_real_username; 
worker_processes 4; 
error_log /var/log/nginx/error.log; 
pid  /var/run/nginx.pid; 
events { 
    worker_connections 8192; 
} 
http { 
    include  /etc/nginx/mime.types; 
    default_type application/octet-stream; 
    access_log /var/log/nginx/access.log; 
    sendfile  on; 
    #tcp_nopush  on; 
    keepalive_timeout 0; 
    #keepalive_timeout 65; 
    tcp_nodelay  on; 
    gzip on; 
    include /etc/nginx/conf.d/*.conf; 
    include /etc/nginx/sites-enabled/*; 
} 

답변

3

저는이 경우 전문가가 아닙니다. 그러나 CPU가 유휴 상태이고 메모리가 병목 현상이 아니라면 하드 드라이브가 내 마음에 온다. 아마도 매우 느리고 속도가 나쁜 것은 깨진 하드 디스크의 힌트 일 것입니다.

몇 가지 간단한 벤치 마크를 실행해야합니다.

1

테스트를 어디에서하고 있습니까? 동일한 데이터 센터에있는 다른 서버 또는 집/직장 인터넷 연결? 집 연결에서 사이트의 성능을 안정적으로 테스트하는 것은 어려울 것입니다. 하나는 인터넷 연결이 너무 느리고 두 번째로 많은 개인 라우터가 많은 동시 연결을 처리 할 수 ​​없다는 것입니다.

또한 이미지없이 벤치 마크를 실행 해보십시오.