İçindekiler
Web siteniz veya uygulamanız büyüdükçe, tek bir sunucu gelen tüm trafiği karşılayamaz hale gelir; yoğun anlarda site yavaşlar, hatta çöker. İşte burada load balancer (yük dengeleyici) devreye girer. Bu rehberde load balancer'ın ne olduğunu, nasıl çalıştığını, hangi algoritmaları ve türleri kullandığını ve ne zaman ihtiyaç duyacağınızı anlatıyoruz.
Load Balancer Nedir?
Load balancer (yük dengeleyici), gelen ağ ve uygulama trafiğini birden çok sunucuya eşit şekilde dağıtan bir sistemdir. Amacı, tek bir sunucunun aşırı yüklenmesini önlemek, trafiği dengeli dağıtarak hem performansı hem de erişilebilirliği artırmaktır. İstemci cihazlar ile arka uç (backend) sunucular arasında bir köprü gibi konumlanır ve gelen her isteği uygun bir sunucuya yönlendirir.
Bir sunucu çökse bile load balancer trafiği ayakta kalan diğer sunuculara yönlendirmeye devam eder; bu yüzden yüksek erişilebilirlik (high availability) mimarilerinin temel taşıdır.
Load Balancer Nasıl Çalışır?
Load balancer, istemciden gelen isteği alır, arka uçtaki sunuculardan hangisinin bu isteği karşılayacağına karar verir ve isteği o sunucuya yönlendirir. Bu süreç boyunca bağlantıyı yönetir ve sunucuların sağlık durumunu (health check) izler — yanıt vermeyen bir sunucuyu otomatik olarak devre dışı bırakır. Bu yönüyle aynı zamanda bir ters proxy (reverse proxy) görevi de görür.
Örnek olarak iki sunucu kurup sitenizi her ikisine bağladığınızı düşünün. Gelen isteklerin yoğunluğuna göre load balancer, istekleri bu iki sunucu arasında paylaştırır; biri yoğunken diğerine yönlendirerek yükü dengeler.
Load Balancing Algoritmaları
Load balancer'ın "hangi isteği hangi sunucuya göndereceğine" karar vermesini sağlayan yöntemlere load balancing algoritması denir. En yaygın kullanılanlar:
| Algoritma | Nasıl Çalışır | Uygun Olduğu Durum |
|---|---|---|
| Round Robin | İstekleri sırayla, sunuculara teker teker dağıtır | Sunucular benzer kapasitedeyse |
| Least Connections | O an en az aktif bağlantısı olan sunucuya yönlendirir | Uzun süren oturumlar/değişken yük |
| Weighted Round Robin | Güçlü sunuculara ağırlık verip daha fazla istek gönderir | Sunucu kapasiteleri farklıysa |
| IP Hash | İstemcinin IP'sine göre hep aynı sunucuya yönlendirir | Oturum sürekliliği (session) gerektiğinde |
| Least Response Time | En hızlı yanıt veren sunucuyu seçer | Yanıt süresi kritik uygulamalar |
Katman 4 (L4) ve Katman 7 (L7) Load Balancer Farkı
Load balancer'lar OSI modelinin hangi katmanında çalıştığına göre ikiye ayrılır:
| L4 (Transport) | L7 (Application) | |
|---|---|---|
| Neye bakar | IP ve port (TCP/UDP) | İçerik: URL, başlık, çerez |
| Hız | Çok hızlı, düşük gecikme | Biraz daha yavaş (içerik incelenir) |
| Esneklik | Sınırlı | Yüksek (içeriğe göre yönlendirme) |
| Örnek kullanım | Ham TCP trafiği dağıtımı | /api ve /blog'u farklı sunuculara yönlendirme |
Modern web uygulamalarının çoğu, içeriğe göre akıllı yönlendirme yapabildiği için L7 load balancer kullanır.
Load Balancer Avantajları
- Performans: Yükü dağıtarak sunucuların daha hızlı ve verimli çalışmasını sağlar.
- Yüksek erişilebilirlik: Bir sunucu çökse bile site, ayakta kalan sunucular üzerinden çalışmaya devam eder.
- Ölçeklenebilirlik: Trafik arttığında load balancer'ın arkasına kolayca yeni sunucu ekleyebilirsiniz.
- Daha fazla trafik kapasitesi: Tek sunucunun kaldıramayacağı istek hacmini karşılayabilirsiniz.
- Güvenlik: Ek bir katman olarak kötü niyetli trafiği tespit etmeyi ve filtrelemeyi kolaylaştırır.
- Maliyet verimliliği: Birden çok orta ölçekli sunucuyu verimli kullanmak, tek dev sunucudan genelde daha ekonomiktir.
Load Balancer Türleri
- Sunucu Yük Dengeleme: Gelen istekleri yoğunluğa göre sunucular arasında dağıtır — en temel kullanımdır.
- Sanal Yük Dengeleme: Yazılım ve donanım yük dengelemenin birleşimidir; sanal makine üzerinde özel yük dengeleme sağlar.
- Bulut Tabanlı Yük Dengeleme: Bulut sağlayıcısının sunduğu hizmettir (HTTP, dahili, ağ yükü dengeleme gibi seçeneklerle).
- Konteyner Yük Dengeleme: Yalıtılmış uygulama örnekleri arasında dengeleme yapar; Kubernetes gibi konteyner orkestrasyon sistemleriyle çalışır.
- Donanım Tabanlı Yük Dengeleme: Özel fiziksel cihazlar üzerinde çalışır; yüksek kapasiteli ama maliyetli çözümdür.
- Yazılım Tabanlı Yük Dengeleme: Sanal makineler ve sunucular üzerinde çalışır; donanım tabanlıdan daha esnek ve ekonomiktir.
Popüler Load Balancer Çözümleri
- Nginx: Hem web sunucusu hem de L7 load balancer olarak yaygın kullanılan, yazılım tabanlı güçlü bir çözüm.
- HAProxy: Yüksek performanslı, L4/L7 destekleyen, kurumsal ortamlarda tercih edilen açık kaynak yük dengeleyici.
- Bulut load balancer'ları: AWS ELB/ALB, Google Cloud Load Balancing, Cloudflare Load Balancing gibi yönetilen servisler.
Load Balancer'a Ne Zaman İhtiyaç Duyarsınız?
- Tek sunucu yoğun saatlerde yetersiz kalıyor, site yavaşlıyor veya çöküyorsa.
- Kesintisiz hizmet (high availability) sunmanız gerekiyorsa — bir sunucu arızalansa bile site ayakta kalmalı.
- Trafiğiniz dalgalı ve hızlı ölçeklenmeniz gerekiyorsa.
- Bakım/güncelleme sırasında sunucuları tek tek devre dışı bırakıp siteyi kesintisiz tutmak istiyorsanız.
Sık Sorulan Sorular
Load balancer ile reverse proxy aynı şey mi?
Benzer ama aynı değildir. Reverse proxy, istekleri arka uç sunucu(lar)a ileten bir aracıdır; load balancer ise özellikle birden çok sunucu arasında yük dağıtımına odaklanır. Nginx gibi araçlar her iki görevi de yapabilir.
Küçük bir web sitesi için load balancer gerekir mi?
Genellikle hayır. Düşük-orta trafikli bir site tek sunucuda sorunsuz çalışır. Load balancer, trafik tek sunucunun kapasitesini zorladığında veya kesintisiz erişilebilirlik kritik olduğunda gereklidir.
Round Robin ile Least Connections arasındaki fark nedir?
Round Robin istekleri sırayla eşit dağıtır; sunucuların anlık yükünü dikkate almaz. Least Connections ise o an en az aktif bağlantısı olan sunucuyu seçer, bu yüzden uzun süren oturumların olduğu uygulamalarda daha dengeli bir dağıtım sağlar.
Load balancer tek başına güvenlik sağlar mı?
Tek başına tam bir güvenlik çözümü değildir, ancak ek bir katman olarak kötü niyetli trafiği tespit etmeyi kolaylaştırır ve genellikle SSL sonlandırma, rate limiting gibi güvenlik özellikleriyle birlikte kullanılır.
Load balancer'ın arkasına kaç sunucu ekleyebilirim?
Pratikte kullandığınız çözümün kapasitesine bağlıdır, ancak load balancer'ların en büyük avantajı yatay ölçeklenebilirliktir: ihtiyaç arttıkça arka uca yeni sunucular ekleyerek kapasiteyi kolayca büyütebilirsiniz.
İlgili yazılar
HTTP 503 Service Unavailable Hatası Nedir? Nedenleri ve Çözümü
503 Service Unavailable, sunucunun isteğe şu anda cevap veremediğini gösterir. Aşırı yük, bakım, PHP-FPM ve veritabanı sınırları gibi nedenleri ve adım adım çözümleri anlatıyoruz.
VPS Nedir? Sanal Sunucu Nasıl Çalışır, Kimler İçin Uygundur? (2026)
VPS (Virtual Private Server), fiziksel bir sunucunun sanal makinelere bölünerek size ayrılmış kaynaklarla sunulmasıdır. VPS'in nasıl çalıştığını, paylaşımlı hosting ve dedicated sunucudan farkını ve nasıl seçileceğini anlatıyoruz.
429 Too Many Requests Hatası Nedir? Nedenleri ve Çözümü
429 Too Many Requests, bir istemcinin kısa sürede çok fazla istek gönderdiğini ve sunucunun hız sınırına takıldığını gösterir. Hatanın nedenlerini, ziyaretçi ve site sahibi için çözümleri ve Nginx, Apache, Cloudflare ayarlarını anlatıyoruz.