Bilişimde yük dengeleme, işlemlerin tamamını daha verimli hale getirmek amacıyla bir kaynak grubu (bilişim birimleri) üzerinden bir dizi görevi dağıtma sürecini ifade eder. Yük dengeleyici (load balancer), bir donanım veya yazılım çözümüdür. Verilerin birden çok sunucu arasında verimli bir şekilde taşınmasına yardımcı olur, ağ kaynaklarının kullanımını optimize eder ve ağ donanımlarının aşırı yüklenmesini önler.
Bir içerik dağıtım servisi için yük dengeleme, bir küme veya sunucu havuzundaki birden çok sunucu arasında ağ trafiğinin dağıtılma sürecidir. Bu sürecin amacı; sunucuların aşırı yüklenmesini önlerken aynı zamanda güvenilir kalmalarını sağlamaktır.
MerlinCDN distributionlarında, son kullanıcının istekleri şu durumlarda orijin sunucusuna yönlendirilir:
- Bu içerik için MerlinCDN'e gelen ilk istekse
- Eğer bir içerik Orijin Sunucusunda güncellenirse
- Eğer bir içerik no-cache olarak ayarlanmışsa
MerlinCDN, son kullanıcı cihazları ve MerlinCDN sunucuları arasındaki yük dengelemesini sağlar. MerlinCDN Yönetim Paneli üzerinden, MerlinCDN ve orijin sunucularınız arasındaki yük dengelemesini belirleyebilirsiniz. Orijin sunucusunun IP adreslerinin Ağırlık ayarıyla veya Orijin ayarlarındaki yük dengeleme türleri ile bu özelliği yapılandırabilirsiniz.
Birden çok orijine sahipseniz, yük dengelemesini ayarlamanız gerekir. Böylece MerlinCDN, istekleri tek bir sunucuya yönlendirmek yerine Orijin kümenizdeki sunucular arasında dağıtım yapacaktır.
MerlinCDN sistemindeki Yük Dengeleyici (Load Balancer) türleri
Round Robin
En yaygın olan ve en çok kullanılan yük dengeleme algoritmasıdır. İstekler rotasyonel bir temelde her bir sunucuya teker teker yönlendirilir. Round Robin algoritması; dengeleme sürecinde sunucu yükünü, sistem kaynaklarını veya sunucular üzerindeki aktif bağlantıları dikkate almaz. Bu algoritma, istekleri mevcut olan tüm sunuculara eşit olarak dağıttığı için sunucular eşit özelliklere sahip olduğunda daha kullanışlı hale gelir.
Örnek
Üç sunucunuz var: Sunucu 1, Sunucu 2, Sunucu 3
Sunucu 1, Sunucu 2, Sunucu 3; bir MerlinCDN distributionı için Orijin Sunucularıdır.
Yük Dengeleme türü olarak Round Robin seçilirse, MerlinCDN istekleri aşağıdaki sırayla yönlendirir:
- İlk istek Sunucu 1’e gönderilir.
- İkinci istek Sunucu 2’ye gönderilir.
- Üçüncü istek Sunucu 3’e gönderilir.
Sunucular aynı veya eşit yükleri kaldırabilecek kadar benzer ise, Round Robin algoritması ile yük dengeleme tavsiye edilir. Round Robin algoritması ile kapasitesinin daha azını kullanan sunuculara daha fazla istek yönlendirme mantığı uygulanamaz. Bu yüzden düşük kapasiteli sunucular aşırı yüklenebilir veya hızlıca dolabilir. Eğer bu sunucular daha fazla CPU, RAM veya daha çok yükü kaldırabilecek diğer özelliklere sahipse, her bir sunucunun kapasitesine göre Ağırlık ayarlamalarını yapmanız tavsiye edilir.
Least Connection
İstekler en az aktif bağlantısı olan sunucuya yönlendirilir. Yük dengelemenin bu türü, sunucunun aşırı yüklenme riskini düşürür. Yeni bağlantıların aynı havuzdaki diğer sunuculara kıyasla daha kalıcı bağlantılara sahip olan bir sunucuya gitmesini önler. Least Connection yöntemi sunucuların CPU ve RAM gibi sistem kaynaklarını önemsemez. Ancak en az bağlantıya sahip sunucuya yeni istekleri yönlendirerek her zaman yeni bağlantıları en iyi şekilde yanıtlaması muhtemel sunucuların yüklenmesini sağlar. Sunucular aynı özelliklerde değilse, daha yüksek CPU veya diğer sistem kaynaklarına sahip olanlarda kapasite boşta kalırken, Least Connection yöntemi daha az kapasitesi olan sunucuların fazla yüklenmesiyle sonuçlanabilir.
Örnek
Üç sunucunuz var: Sunucu 1, Sunucu 2, Sunucu 3
Sunucu 1, Sunucu 2, Sunucu 3; bir MerlinCDN distributionı için Orijin Sunucularıdır.
- Sunucu 1, en fazla 10 eşzamanlı bağlantıyla başa çıkabilir.
- Sunucu 2, en fazla 30 eşzamanlı bağlantıyla başa çıkabilir.
- Sunucu 3, en fazla 50 eşzamanlı bağlantıyla başa çıkabilir.
- Sunucu 1, 8 aktif bağlantıya sahiptir.
- Sunucu 2, 15 aktif bağlantıya sahiptir.
- Sunucu 3, 30 aktif bağlantıya sahiptir.
Yük Dengeleme türü olarak Least Connection seçilirse, MerlinCDN istekleri Sunucu 1’e yönlendirecektir. Bu yöntem sunucuyu maksimum limite kadar yüklerken, Sunucu 3 kullanılmamış 20 bağlantı kapasitesine sahip olacaktır.
Sticky Session
Session stickiness veya diğer adıyla session persistence süreci, bir oturum süresi boyunca yük dengeleyicinin müşteri ve belirli bir ağ sunucusu arasında benzerlik oluşturmasıdır. Birçok web sitesinin bir oturum süresi boyunca kişisel kullanıcı verilerini sunma ihtiyacı vardır. Session stickiness, son kullanıcı ve sunucu arasındaki oturum bilgilerini korumanın etkili ve doğru bir yolunu sağlar, aynı zamanda ağın aşırı yüklenmesini de engeller.
Aynı istemciden gelen her bir istek için, istekler her seferinde aynı sunucuya yönlendirilir. Burada oturum bilgisi saklanır ve oturum sona erene kadar güncellenir.
Random
İsteklerin orijin sunucularına yönlendirilmesinde belirli bir kural uygulanmaz.
Yorumlar
Yorum yazmak için lütfen oturum açın: oturum aç.