Ölçeklenebilir Web Mimarisi

Ölçeklenebilirlik nedir?
Ölçeklenebilirlik, bir sistemin, ağın veya sürecin, kaliteden ödün vermeden tepki verme ve uyum sağlama veya sürekli iş büyümesini akıcı bir şekilde ele alma, sunulan hizmetlerde kaliteyi kaybetmeden daha da büyümeye hazır olma yeteneğini gösteren arzu edilen özelliğidir. .
Sistemimizin maliyet, zaman, zaman ve karmaşıklık açısından makul olan değişiklikler veya uzantılarla daha büyük bir iş yükünü destekleme yeteneğinin ne olduğunu söyleyebilirsiniz.
Ölçeklenebilirlik Türleri
Genel olarak dikey ve yatay ölçeklemeden veya her ikisinin birleşiminden bahsedebiliriz.

Dikey Ölçeklendirme


Temel olarak mimarimizin bir veya daha fazla belirli öğesinin kapasitesini artırmaktan oluşur, örneğin merkezi sunucumuzun belleğini genişletmek veya CPU'ları daha yüksek hızlı olanlarla değiştirmek. Özetle, sanallaştırma kullandığımızda çok yaygın olan bir şey olan sunucunun kapasitelerini artırın ve o zaman sunucunun kullanılabilir RAM'in %30'una sahip olacağını söylüyoruz.

Yatay Ölçekleme


Öğreticide detaylandıracağımız kişidir., farklı planlama türlerini kullanarak aynı görevi gerçekleştiren düğümlerin sayısını artırmaya dayanır, örneğin doymuş bir web sunucumuz varsa, yükü dengelemek için bir tane daha ekleriz.
Seviyelere göre web mimarisi türleri.
Linux sistemleri ile uygulanabilecek mimariler hakkında konuşacağız, açık kaynaklı araçları kullanarak en temelden oldukça gelişmiş bazılarına gideceğiz, yatay ölçeklenebilirlik ve arızaya karşı direnç sunacağız, tüm bu mimariler herhangi bir şekilde uygulanabilir. PaaS veya kendi altyapısı ile.

1. Tek seviyeli mimari


Uzaktan erişilebilen Apache ve MySQL'e sahip tek bir sunucunun olduğu her yerde en temel olanıdır. Az ziyaret marjı olan sayfalarda veya test ortamlarında çok yaygındır, başarısızlığa tolerans marjı sunmaz ve yatay olarak büyümek için kullanılması zordur.

2. İki Katmanlı Mimari


Bu sefer biraz hata toleransı sunarak veritabanını web sunucusundan ayırdık. Bu şekilde, veritabanı başarısız olursa, web sunucusu, veritabanına bağlı olmayan statik bir şekilde içerik sunabilir. Ve web sunucusunun arızalanması durumunda yine yeni bir web sunucusu yükselterek bilgiye erişebiliriz.Tasarım çok ölçeklenebilir bir tasarım olmadığı için çeşitli kusurlar sunar.

3. Üç katmanlı mimari


Bu sefer kullanıcılardan gelen tüm istekleri alacak bir yük dengeleyici kullanmaya başlıyoruz. Bu sefer daha ölçeklenebilir bir tasarım sunuyoruz, böylece yükümüz artarsa ​​daha fazla web sunucusu ekleyebilir ve ölçeklendirebiliriz. Web sunucularının belirli bir yük düzeyinde veya yoğun bir saatte otomatik olarak eklenmesi için otomatik ölçeklendirme bile uygulayabiliriz. Bu tasarımdaki sorun, veritabanımızı doyurabilmemizdir.

4. Dört katmanlı mimari


Şimdi, sistemi daha ölçeklenebilir hale getiren bir yük dengeleyici ve bir memcached kullanıyoruz. Bu tasarımla, hata toleransı sunmanın yanı sıra, gerektiği kadar veritabanı ve web sunucusu ekleyebiliriz. Veritabanları arasındaki yükü şu şekilde bölebiliriz: CASSANDRA çok düğümlü bir uygulama sunar. Bu tasarım çok daha karmaşık, ancak çok daha fazla hata toleransı ve tüm seviyelerini ölçeklendirme yeteneği ekliyorum.

5. Beş katmanlı mimari


Bir web sayfasının içeriği statik ve dinamik olarak ayrılabilir. Örneğin, web katmanını bir Apache sunucusuna ve Jetty veya JBoss çalıştıran JAVA uygulamalarına sahip başka bir sunucuya böldük. Apache, statik içeriği sağlarken, uygulama sunucusu dinamik veya anında içeriği işler. Bunun bir örneği, bir destek web sitesinin SSS bölümü olabilir, yalnızca statik içerik olduğu için APACHE / NGINX tarafından işlenebilir.

BÜYÜT

6. Altı katmanlı mimari


Biraz daha zarif olabilir ve bir içerik dağıtım ağı (CDN) veya AWS'de ne olarak bilinirse ekleyebiliriz. Amazon CloudFront CDN'siÖrneğin, bir E-öğrenme web sitemiz var ve kullanıcılarımız Kılavuzları web sitemizden PDF veya Video olarak indiriyor. İndirmelere ayrılmış tüm bant genişliğini kaydedebiliriz, Bunu halleden bir CDN'den sunarak, Web'in geri kalanı altyapımızda çalışabilir.

BÜYÜT

SonuçlarWeb trafiğine bağlı olarak uygulanabilen çok katmanlı mimariler gördük. Geleceği düşünen, ölçeklenebilen ve hata toleransını sürdürebilen, kaynak eksikliğinden veya vazgeçilmez bir düğümün başarısızlığından kaynaklanan web çökmelerinden kaçınan mimariler oluşturulması tavsiye edilir. Bu tasarımlardan bazılarını yedeklemeler ve otomatik dağıtımlar gibi diğer önerilerle birlikte oluşturarak, 99.9 hataya dayanıklı Uptime ile bir web sitesi sunabiliriz.Bu Eğitimi beğendiniz ve yardım ettiniz mi?Yazara olumlu puan vermek için bu düğmeye basarak yazarı ödüllendirebilirsiniz.
wave wave wave wave wave