Alanımızdaki birçok şey gibi, 'sunucusuz' aşırı bir terim haline geliyor .. ama genellikle "İşlevsel olarak, Mimarimiz bir sunucunun sağlanmasına veya devam eden bakımına bağlı değil" anlamına geliyor.
Akla gelen ilk örnek, yerel depolamayı kullanan ve Amazon S # veya Github Pages (ya da herhangi bir statik site - bunlar sadece yaygın örneklerdir) gibi bir şeyde depolanan tek sayfalık bir javascript uygulamasıdır. Tamamen tarayıcınızda çalışan 'yapılacaklar' veya 'yapılması gerekenler' tarzı bir uygulama düşünün. Tarayıcınız kodu indirmek için S3 gibi bir hizmete isabet eder ve kaydettiğiniz öğelerin tümü tarayıcınızda yerel depolamada saklanır. Bunun için sakladığınız hiçbir sunucu yok.
İkinci örnek ve biraz daha karmaşık (ve aynı zamanda 'sunucusuz' terimini popülerleştiren örnek) AWS Lambda gibi bir hizmet kullanıyor. Bunu çözdüğü sorunu sunarak açıklayayım:
Kariyerim boyunca defalarca, bir müşteri için, belirli aralıklarla çıkartma, dönüştürme ve yükleme yapan (genellikle bir komisyon görevi olarak yazılan) bazı yakut kodlarından biraz daha fazlasını içeren bir iş problemini çözdüm. Bir kez çözüldüğünde genellikle cron ile otomatikleştirirdim. Sonra sorun, 'saatte bir kez çalışan bu şeyi nerede barındırırım?' Olur. Bazı müşteriler için mevcut altyapılarında bir sunucu kurduk. Diğerleri için, zamanın% 99'u boşta olsa bile bir EC2 örneği kurduk. Her iki durumda da, sağlama, düzeltme eki, izleme, güncelleme vb. Gerektiren bir sunucu var.
Amazon Lambda ile bu komisyon görevini yerine getirip saf bir 'işlev' olarak hizmetlerinde çalıştırabilirim. Programlayabilirim. Artık müşterinin saatte bir bu kadar basit bir şey için bir altyapıya ihtiyacı olmaz.
'Sunucusuz' ile hala bir sunucu var, tıpkı 'bulut'la olduğu gibi hala bir bilgisayar var. Bunun üzerine sadece sizin için çevresel sorumlulukların bir kısmını alan bir soyutlama var.