2008-09-24 18 views
8

Bunun doğrudan bir programlama sorusu olmadığını biliyorum, ancak stackoverflow üzerindeki insanlar herhangi bir soruyu yanıtlayabilecek gibi görünüyor.nginx kurulum sorusu

Centos 5.2 64 bit çalıştıran bir sunucum var. 4GB bellek ile oldukça güçlü çift çekirdekli 2 sunucu. Çoğunlukla statik dosyalar, flash ve resimler sunar. Lighttpd'yi kullandığımda, 80 MB/sn'nin üzerinde bir hızla çalışır, ancak nginx ile test ettiğimde 20 MB/sn'den daha azına düşer.

Benim kurulum, oldukça yalındır varsayılan kurulum dosyasını kullanır ve aşağıdaki

user lighttpd; 
worker_processes 8; 
worker_rlimit_nofile 206011; 
#worker_rlimit_nofile 110240; 

error_log /var/log/nginx/error.log; 
#error_log /var/log/nginx/error.log notice; 
#error_log /var/log/nginx/error.log info; 

pid  /var/run/nginx.pid; 


events { 
    worker_connections 4096; 
} 

http { 
.... 

keepalive_timeout 2; 
.... 
} 

ekledik Ve nginx en azından kadar güçlü olması gerekiyordu düşündüm, bu yüzden bir şey yapmıyor olması gerekir .

+0

Sizin lighttpd yapılandırmanız nasıl görünür? Karşılaştırmak ilginç olabilir. Ayrıca, lighttpd tek iş parçacıklı olduğundan, ancak çift çekirdekli olduğunuzdan - iki lighttip'i mi başlatıyorsunuz yoksa 80MB/s'yi tek bir örnekle mi yapıyorsunuz? – Till

+0

Test yönteminizi özetleyebilir misiniz? Bu yardımcı olabilir. –

+0

Bu, yalnızca statik dosyaları yapan son derece aktif bir web sunucusudur. Lighttpd ve nginx, centos 5 kutusunda yum ile yüklenir. Oradan oldukça düz ileri. Hepsi, yük dengeleyicisinde munin ve aktif oturumlarla izlenir. Nginx'li kutu, ne kadar parlak olduğunu% 50 yapar –

cevap

3

Belki lighttpd bir çeşit önbellek kullanıyor mu? Raporlanan% 400 performans artışı için nginx ile memcached nasıl kurulacağını açıklayan harika bir makale here var.

memcached modülünde nginx doc here olduğunu.

6

Eğer yeniden senin nginx (kiil -HUP) Eğer nginx kullanmak için derlendi Ne olay yöntemi hata günlükleri

 
2008/10/01 03:57:26 [notice] 4563#0: signal 1 (SIGHUP) received, reconfiguring 
2008/10/01 03:57:26 [notice] 4563#0: reconfiguring 
2008/10/01 03:57:26 [notice] 4563#0: using the "epoll" event method 
2008/10/01 03:57:26 [notice] 4563#0: start worker processes 
2008/10/01 03:57:26 [notice] 4563#0: start worker process 3870 

böyle bir şey alırsınız?

Herhangi bir access_log'ing yapıyor musunuz? Günlük dosyası için yazma kilidindeki çekişmeyi azaltacak buffer = 32k eklemeyi düşünün.

İşçi sayısını azaltmayı düşünün, sezgisel karşılığını verir, ancak çalışanların kabul etme() gibi sys çağrıları için birbirleriyle senkronize olması gerekir. Ideal ben sen okuma ayarı açıkça denemek ve dinleme yuvası üzerindeki yuva tamponlarını yazabiliriz 1.

öneririm, işçi sayısını azaltmayı deneyin http://wiki.codemongers.com/NginxHttpCoreModule#listen

1

Öneriler görebilirsiniz: - işlemci başına kullanın 1 işçi. - Çeşitli nginx arabellek ayarlarını gözden geçirin