Serverless Mimaride Uygulama Geliştirme

Şahin Bölükbaşı
2 min readMar 13, 2024

--

Serverless mimari, günümüzde yazılım geliştirme dünyasında büyük ilgi gören ve popülerliği hızla artan bir yaklaşımdır. Geleneksel sunucu tabanlı mimariden farklı olarak, serverless mimari geliştiricilerin sunucu yönetimiyle uğraşmadan sadece işlevsel kodlarını odaklanmalarını sağlar. Bu yazımda, serverless mimarinin ne olduğunu, nasıl çalıştığını ve nasıl kullanılabileceğini ayrıntılı bir şekilde anlatmaya çalışacağım.

Serverless Nedir?

Serverless, “sunucusuz” anlamına gelir, ancak bu terim aslında sunucuların yokluğu anlamına gelmez. Sunucular hala vardır, ancak geliştiriciler bu sunucuların yönetiminden ve bakımından kurtulurlar. Serverless mimari, işlevleri (functions) merkeze alır ve işlevlerin belirli olaylar gerçekleştiğinde (örneğin, HTTP isteği veya veritabanı güncellemesi) otomatik olarak tetiklenmesini sağlar.

Serverless Mimaride İşleyiş

Serverless mimaride, geliştiriciler işlevleri birimler halinde tasarlarlar. Her bir işlev, belirli bir görevi gerçekleştiren ve bağımsız olarak çalışabilen bir parçadır. Bu işlevler, bulut sağlayıcısının yönettiği altyapı üzerinde çalışır. Örneğin, bir web uygulamasında kullanıcıların profil resimlerini yeniden boyutlandırmak için bir işlev oluşturabilirsiniz. Bu işlev, bir kullanıcı bir profil resmi yüklediğinde otomatik olarak tetiklenir, resmi yeniden boyutlandırır ve sonucu kaydeder.

Serverless Mimaride Uygulama Geliştirme Adımları

1. Bulut Sağlayıcı Seçimi

İlk adım, bir bulut sağlayıcı seçmektir. AWS Lambda, Azure Functions ve Google Cloud Functions gibi sağlayıcılar, serverless mimariyi destekleyen hizmetler sunarlar. Sağlayıcı seçerken, fiyatlandırma, desteklenen diller ve hizmetler gibi faktörleri göz önünde bulundurmalısınız.

2. İşlevlerin Oluşturulması

Serverless uygulamanızın temelini oluşturacak işlevleri yazın. İşlevler, iş uygulamanızın mantığına göre tasarlanmalı ve işlevler arasındaki iletişim ve veri paylaşımı doğru bir şekilde kurulmalıdır.

3. İşlevlerin Yayınlanması

İşlevlerinizi seçtiğiniz bulut sağlayıcısına yükleyin. Bu adım genellikle sağlayıcının sunduğu bir komut satırı aracılığıyla veya bir web arayüzü kullanılarak yapılır. İşlevlerinizin doğru bir şekilde yüklendiğinden ve çalıştığından emin olun.

4. Tetikleyicilerin Eklenmesi

İşlevlerinizi tetikleyecek olayları belirleyin. Örneğin, HTTP istekleri, veritabanı güncellemeleri veya zamanlayıcılar gibi olaylar işlevlerinizi tetikleyebilir. Her işlev için bir veya daha fazla tetikleyici ekleyebilirsiniz.

5. İzleme ve Optimizasyon

Serverless uygulamanızın performansını ve kullanımını izleyin. Gerektiğinde işlevlerinizi optimize edin ve maliyetleri düşürmek için gereksiz kaynak kullanımlarını tespit edin.

Serverless Mimaride Avantajlar

Serverless mimarinin birçok avantajı vardır. Bunlar şunları içerir:

  • Sunucu maliyetleri, işlevlerin çalışma süresine göre değil, yalnızca kullanılan kaynak miktarına göre hesaplanır.
  • Bulut sağlayıcı, işlevleri otomatik olarak ölçeklendirir, böylece artan yük altında performans düşüşü yaşanmaz.
  • Bulut sağlayıcılar genellikle yüksek kullanılabilirlik sunar, böylece uygulamanızın sürekli olarak erişilebilir olmasını sağlar.
  • Sunucuların yönetimi ve bakımı bulut sağlayıcıya aittir, bu da geliştiricilerin daha az altyapı yönetimiyle uğraşmalarını sağlar.

Sonuç

Serverless mimari, modern uygulama geliştirme süreçlerinde daha popüler hale gelen bir yaklaşımdır. Bu yaklaşım, geliştiricilerin daha hızlı ve daha esnek uygulamalar geliştirmelerine olanak tanırken, aynı zamanda altyapı yönetimiyle uğraşma yükünü de azaltır. Serverless mimariyi kullanarak, maliyetleri düşürebilir, ölçeklenebilir uygulamalar oluşturabilir ve daha hızlı bir şekilde pazara sürüş yapabilirsiniz.

--

--