Apache dışında bir web sunucusuna bakmaya değer mi?


13

Sitelerimi geleneksel olarak varsayılan olarak apache altında dağıttım. Yine de NGinX hakkında bir şeyler duydum ve hangi koşullar altında daha üstün olacağını merak ediyorum. Apache ve Nginx'e ek olarak, web sunucuları için diğer seçenekler nelerdir ve faydaları nelerdir?


3
Çok geniş bir soru. "Değer" sorusunu cevaplamak için, bağlamınız hakkında biraz daha açıklama yapmanız gerektiğini düşünüyorum.
jessegavin

Yanıtlar:


6

Evet.

Web sunucularından biri, birkaç saatte bir yükte büyük bir artış yaşardı. Kütüklere baktıktan sonra, yük artışının ne zaman olduğunu öğrendim, orada birçok insan galeriye bakıyor.

Bu yüzden apache'den nginx'e statik içeriğin% 99'unu yükledim. apache tüm php hizmet için kaldı. Web sunucularımdaki yük güzel bir düşük sayıya düştü ve artık yüksek yük sivri uçları yoktu.

Sunucularınızdan daha fazlasını elde etmek istiyorsanız, kesinlikle tüm statik içeriği sunan hafif bir sunucunuz olsun.


Yük neden dünyada farklı olabilir?

+1, bunu bir süre önce yaptım, mükemmel çalıştı.
theotherreceive

3
@Kinopkio nginx bağlantı başına bir işlem / iş parçacığı gerektirmez, bu nedenle apache'den daha az kaynak kullanarak aynı sayıda istemciye hizmet verebilir.
theotherreceive

Ah tamam üzgünüm sunucu yükü yerine bant genişliği açısından düşünüyordum.

3

Apache biraz ağır olabilir ve ağır yük altındayken devrilebilir. Nginx, lighttpd ve cherokee dahil olmak üzere daha hafif sunucular bulunmaktadır.

Bu hafif seçenekler, statik dosyaları hızlı bir şekilde sunmak ve dinamik sunucu tarafı çalışmalarını Apache'ye devredecek şekilde ayarlanabilir.



0

Netcraft , web sunucularının pazar payını takip ediyor ve onlara göre IIS, Apache'den sonra% 26.03 payla ikinci sırada bulunuyor (Temmuz 2010 itibariyle). Bu, 205 milyondan fazla sitenin anketine dayanmaktadır

Bu bağlantının bugün Apache kullanıyorsanız IIS7'yi kontrol etmeniz için nedenleri var


Linux üzerinde IIS7 ile ilgili sorun .... run run run .. çalışmıyor run ...
Tim Post

Soruyu anladığım kadarıyla, OP'nin belirli bir işletim sistemi için web sunucusu gerektirdiğini söyleyen hiçbir şey yok ... yoksa bir şey mi kaçırıyorum? Windows'u da tercih edebileceğini sanıyordum.
mvark

0

Gerçekten ne yaptığınıza bağlı.

Yalnızca statik içeriğiniz varsa Apache'ye ihtiyacınız yoktur. nginx veya lighttpd size iyi hizmet eder.

Statik ve dinamik bir karışımınız varsa (iyi, Perl veya PHP), ancak küçük bir siteniz varsa, yine de bu alternatif artı FastCGI'lardan birini alabilir veya her şeyi Apache'ye atabilirsiniz.

Ruby'ye statik içeriğinizle birlikte mod_passengerhizmet veriyorsanız, Apache'de nginx / lighttpd / etc'nin statik içeriğinizi sunmasıyla size iyi hizmet etmelidir.

Python (benim uzmanlık alanım) için, istersen Apache kullanımını mod_pythonyavaşlatabilirsin. mod_wsgidaha iyi ama yine de çok ağır dinamik trafiğiniz varsa iyi olan Apache yüküne sahipsiniz . Apache çoğu zaman ağır bir kaldırıcıdır.

Eğer gibi yeni sistemlere yoğun trafik, görünüm bir ton yoksa gunicornya uWSGIda Python işlemek için veya hepsi bir sunucu Cherokee. Cherokee statik dosyaları da işler. Geri kalan, yine de statik içeriği sunmak için nginx / lighttpd kullanmak isteyeceksiniz.

Java ve diğer diller hakkında hiçbir fikrim yok.

Bununla birlikte, nginx'i kullanmanın en iyi yanı, inanılmaz derecede yapılandırılabilir olmasıdır. Bu nedenle, her biri CSS, resimler ve JS için olmak üzere farklı alt alanlara sahip birkaç statik sunucu ayarlayın. Bu şekilde, bir seferde alan başına 2 dosya sınırından kaçınmanıza yardımcı olursunuz. Birkaç sunucuyu kurun ve ardından statik içeriğinizin her zaman kullanılabilir olduğundan emin olmak için önlerinde bir nginx proxy / yük dengeleyici ayarlayın.

Temel olarak, EVET, sadece Apache'den daha fazlasına bakın!

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.