Nginx, açık kaynak kodlu reverse proxy, HTTP cache ve load balancer olarakta kullanılabilen web sunucu servisidir. Nginx, Ekim 2004’te Igor Sysoev tarafından oluşturuldu. Igor Sysoev, ilk olarak yazılımı 10.000 eşzamanlı bağlantıya cevap olması açısından tasarladı. Nginx, günümüzde de artık apache kadar popüler olmaya başlamıştır.
Nginx Nasıl Çalışır?
Nginx, düşük bellek kullanımı ve yüksek eşzamanlılık sunmak için kullanılmaktadır. Nginx, her web isteği için yeni işlemler oluşturmak yerine, isteklerin tek bir iş parçacığında işlendiği asenkron olay güdümlü bir yaklaşım kullanır. Nginx’in sağladığı bazı faydalı özellikler şunlardır:
- Reverse proxy
- IPv6
- Load balancing
- FastCGI
- WebSockets
- Cache
- SNI ile TLS/SSL desteği
Nginx vs Apache
En popüler iki açık kaynaklı web servisleri arasında temel farkta statik ve dinamik içerikler olduğunu söyleyebiliriz. Nginx, reverse proxy ve cache özellikleri ile statik içeriklerde ön plana çıkarken, apache ise yapısı sayesinde php ve python gibi dinamik içerik sistemlerinde daha fazla performans vermektedir.
Nginx, veya apache kullanımı da günün sonunda web sitesinin yapısı ve içeriğine göre tercih edilmelidir. Mevcutta Nginx’i reverse proxy olarak ön plan da kullanırken, arka planda da apache çalışması da mümkündür. Performans açısından da iki servisi bu şekilde kullanmak önerilebilir.