PaaS ve IaaS Üzerinde Geliştirme Süreçleri

Infrastructure as a service ve Platform as a service kavramları gerek iş süreçlerinde olsun gerekse geliştirme süreçlerinde olsun farklı avantajlar ve dezavantajlara sahip. Bu yazımda elinin altında IaaS veya PaaS bulunan bir geliştiricinin izleyeceği senaryolar üzerinden giderek bir süreç planı çıkaracağım.

Infrastructre as a Service altyapısında geliştirme süreçleri

  1. Proje üzerinde kullanılacak yazılım dili ve geliştirme ortamları belirlenir.
  2. Projenize uygun bir işletim sistemi tespit edilir ve cloud altyapısında kiraladığınız sunucuya kurulur.
  3. İşletim sistemine web sunucusu rolü (IIS, Apache, vs.) kurulur ve konfigure edilir.
  4. Uygulama geliştirilir.
  5. Geliştirilen uygulama sunucu üzerine alınır o sunucu için test ve optimize edilir.
  6. Uygulamanın performansı test edilir eğer altyapının genişlemesi gerekiyorsa yeni sunucular kurulur ve yapıya eklenir.
  7. IP adresi ataması yapılır ve uygulama dışarıya açılır.
  8. Alan adı ve DNS kurulumu ve düzenlemesi yapılır ve proje kullanıma açılır.

Platform as a Service altyapısında geliştirme süreçleri

  1. Proje üzerinde kullanılacak yazılım dili ve geliştirme ortamları belirlenir.
  2. Projenize uygun platform (LAMP, WINS, vs.) sunan bir PaaS sağlayıcısı seçilir ve hizmet alınmaya başlanır.
  3. Uygulama geliştirilir.
  4. Geliştirilen uygulama hizmet alınan platform üzerinde test ve optimize edilir.
  5. Alan adı ve DNS ayarlamaları yapılır ve proje kullanıma açılır.

Kabaca baktığımız zaman IaaS yapısı daha çok süreç barındırıyor. Ancak durumun bundan öte farklı boyutları var;

  • IaaS seviyesinde aldığınız hizmette altyapıyı kendiniz adam edersiniz. Kurulumlar, güncellemeler yapıldıktan sonra projeye başlayabilirsiniz. Bu da ihtiyaca göre bir sistem uzmanı gerektirebilir. Böylece projeye daha fazla zaman ve para kaynağı harcarsınız. Ancak PaaS modelinde bu süreç yoktur. İhtiyacınız olan altyapıyı hizmet sağlayıcı size anında sunar.
  • IaaS altyapısında sistemlerinizi güvenli, güncel ve daima çalışır tutmak sizin sorumluluğunuzdadır. Projenizin performansına göreyeni node eklemek gerekirse süreçler tekrarlanır ve ileriye yönelik yapı ile daha çok uğraşmak ve zaman harcamak zorunda kalırsınız. Ancak PaaS modelinde bunların hepsi servis sağlayıcı tarafından yapılır ve siz sadece uygulamanızı geliştirmekle, yeni özellikler eklemekle uğraşırsınız.
  • IaaS hizmetini aldığınız şirketin verimerkezi eğer tek bir noktada hizmet veriyorsa global pazarda farklı ülkelerdeki verimerkezlerine uygulamanız için sunucular ekleyip uygulamanıza erişim süresini kısaltmanız gerekir. Ancak çoğu PaaS hizmeti veren şirketin global pazarda bir çok farklı noktada verimerkezleri var yani siz uygulamanızı platforma atarsınız ve tüm global pazara anında hizmet verebilirsiniz.

Bütün bu noktaları listeledikten sonra farklı bir bakış açısından daha bakmak istiyorum olaya. PaaS yapısı güzeldir uygulama geliştirme, iş süreçlerini kısaltma ve para kaynağı konularında size avantaj sağlayabilir ancak bu PaaS hizmeti aldığınız firmadan firmaya değişebilir. Hep yaptığım bir uyarıyı tekrar gündeme getirecek olursam Cloud Computing ancak ve ancak çok iyi bir analiz ve gözlem sonucu projenize uygunsa geçilmesi gereken bir yapıdır. Projenizin nelere gereksinim duyacağı ve uzun vadede neleri gerektireceğini cloud yapısına geçmeden önce çok iyi analiz etmek gerekir. Cloud yapısı belki başınızı çok ağrıtabilecekken geleneksel hosting yapısı sizin için uygun olabilir. Yine projeniz için PaaS yapısı yerine belki de IaaS yapısı daha uygun düşecektir çünkü PaaS yapısında altyapıyı kontrol etme olanağınız yok ancak IaaS yapısında tamamiyle sizin ihtiyaçlarınıza yönelik bir altyapı elde edebilirsiniz. Bu endişeler küçük ve orta ölçekte projelerinizde çok mühim olmasa da büyük ölçekte projeler için çok vahim durumlara sebebiyet verebilir.

Yorum yapın