Son 26 yılda web uygulamalarının arkasındaki mimari bu şekilde karmaşıklaştı.

26 yıl önce, 1995 yılında gerçekleşti yeni başlayan web geliştirme sektöründe devrim yaratan bir olay: LAMP yığınının doğuşu; yani, Apache sunucusu, MySQL veritabanları ve PHP yorumlayıcısı ile donatılmış Linux sistemlerinin birleşik kullanımından.

Problem şu gerekli yüksek bellek ve CPU kullanımı her iki kaynağın da megahertz ve megabayt cinsinden ölçüldüğü bir zamanda. Litestream’in yaratıcısı Ben Johnson, blogunda bu zamanı ve sektörün sonraki gelişimini hatırlıyor ve bunun sonucunda kendine bir soru soruyor:

“Fakat Moore Yasası bize bilgisayarların katlanarak daha hızlı hale geldiği daha iyi bir gelecek vaat ettiyse, […], neden her zamankinden daha fazla bilgisayara ihtiyacımız var?«.

Lamba

Karmaşıklık büyümeye başlar

Johnson’ın bahsettiği şey, n-katmanlı mimarinin yükselişi ve bu da istemci, mantıksal sunucu ve veri sunucusu arasındaki katmanların fiziksel olarak ayrılmasıPHP veya Ruby işlemenin yavaşlığının SQL veritabanlarının performansını etkilemeyeceği bir aramada.

Bu ‘n’ katmanlı mimari ilk bakışta kulağa basit gelse de şunları içerir: gizli bir karmaşıklık:

“Tek bir makinede, istekleri hızlandırmak için sunucumuzu önbelleğe alabilirdik, ancak şimdi veriler birden fazla makine arasında paylaşılıyor, bu yüzden bir sunucu eklememiz gerekiyor. memcached veya redis önbelleğe alınmış verileri paylaşmak için.

“Eşzamanlı birçok bağlantı olduğunda veritabanı sunucuları kolayca aşırı yüklenir, bu nedenle aşağıdaki gibi ara hizmetler eklememiz gerekir. PgBouncer«.

“Sistemimizde tüm düğümlerimize iletilmesi gereken olaylar varsa, o zaman bir makine kümesine ihtiyacımız var. Kafkas«.

Kesinlikle, “yönetilecek bir makine filosu buluyoruz«.

{«file»:»https://webediaespana.video.content-hub.app/default/video/2e/dc/33/5ffecd764bd22f175a/default-standard-720.mp4″,»image»:»https:// webediaespana.delivery.content-hub.app/image/62/0f/93/5ffecdb94bd22f1759/original/ni-html5-ni-apps-nativas-lo-mejor-de-bos-mundos-andres-almo-de-google- geliştiriciler-bq.jpeg»}

Ve sanallaştırma ve konteynerler geliyor

Ancak, ‘Effect 2000’ tehdidi yüzünden herkes sinirlerini kaybederken, demlenmeye başlamıştı. web mimarisi endüstrisinde yeni bir devrim: sanallaştırma.

Squarespace’deki mühendislik başkanı Lawrence Edmonson’a göre, “sanallaştırma dotcom baloncuk ölçekleme problemlerinin çoğunu çözdü ve 2006’da tamamen yeni bir Amazon iş birimi (Amazon Web Services) ortaya çıkardı.”

Böylece farklı sanallaştırma teknolojileri (VMWare, Virtualbox) veya onu tamamlayıcı (Chef ve Vagrant gibi) geliyordu. Ardından Docker ve Kubernetes gibi konteynerler geldi.

Docker'dan Kubernetes'e: kapsayıcıların ne olduğunu ve neden geliştirme endüstrisindeki en büyük devrimlerden biri olduğunu anlamak

Bunların tümü, gelişmiş web geliştirme özelliğine sahip faydalı araçlardır, ancak Johnson bunların dezavantajına dikkat çeker:

“Bütün bu katmanlar, gerçek sorunları çözen yazılım sistemleri yazma işimizden bizi yavaşlatıyor.”

“Basit iki katmanlı bir yazılım sistemi olarak başlayan şey, bir düzine karmaşıklık katmanıyla bir dev haline geldi.”

Buna bir başka sorun daha eklendi, tam olarak Kubernetes’in yükselişine yardımcı olan bir sorun… kendi içinde bir hedef olarak çalışma süresi arayışı:

“Kubernetes gibi çözümler, sıfır kesinti süreli dağıtımların avantajlarından bahseder, ancak doğal karmaşıklıklarının kullanılabilirlik sorunlarına neden olduğunu görmezden gelir.”

Liman işçisi

Karmaşıklık karmaşıklığı doğurdu

Ve bunu şöyle özetliyor: “Karmaşıklık, karmaşıklığı doğurur.” Johnson’ın Hacker News gönderisine yorum yapan bir kullanıcı bu fikri detaylandırıyor:

“Karmaşıklığın, uygulamaların ihtiyaç duyduğu çok sayıda işletim sistemi hizmetinin kopyalanmasından kaynaklandığını görüyorum. Sonuç olarak, kapsayıcı bir ekosistem yalnızca tekerleği yeniden icat eder, ancak onu daha da karmaşık hale getirir.

Ve bu sadece bir kanser gibi yayılıyor: Kubernetes olmayan altyapılar artık ‘terk edilmiş yazılımlar’.”

Sonuç olarak, son çeyrek yüzyılda alınan bir dizi teknolojik mimari kararı, bilgi işlem gücündeki muazzam artışa rağmen neden, uygulamalarımız arkasında daha fazla makine gerektiriyor asla işe yaramaz.

(function() {window._JS_MODULES = pencere._JS_MODULES || {};var headElement = document.getElementsByTagName(‘head’)[0];if (_JS_MODULES.instagram) {var instagramScript = document.createElement(‘script’);instagramScript.src=”https://platform.instagram.com/en_US/embeds.js”;instagramScript.async = true;instagramScript. erteleme = true;headElement.appendChild(instagramScript);}})();

– Haberler Son 26 yılda web uygulamalarının arkasındaki mimari bu şekilde karmaşıklaştı. aslen yayınlandı Genbeta Mark Merino tarafından.

Orijinal kaynağı kontrol edin

Bunu severim:

Severim Yükleniyor…