Spis treści
Biznes może stawiać na różne modele usług chmurowych o zmiennym zakresie dostępnych funkcji i odpowiedzialności. Ten artykuł opisuje model PaaS (Platform as a Service), który szczególnie docenią twórcy aplikacji.
Tworzenie oprogramowania nie wymaga już kosztownych inwestycji w infrastrukturę. Odpada konfiguracja, utrzymanie i modernizacja środowiska. Wszystko za sprawą usług chmurowych, które wspomagają budowanie, testowanie, wdrażanie oraz skalowanie nowoczesnych aplikacji. Jednak środowisko chmury jest dostępne w kilku modelach. Który z nich warto mieć na uwadze?
Czym jest PaaS, czyli Platform as a Service?
PaaS (Platform as a Service, czyli platforma jako usługa) to jeden z kilku modeli cloud computingu. W zakresie odpowiedzialności użytkownika znajdują się tworzone przez niego aplikacje oraz oparte na nich dane. Za inne obowiązki, m.in. utrzymanie i zarządzanie i modernizację infrastruktury, odpowiada dostawca usługi PaaS.
PaaS uwalnia developerów od konieczności inwestowania we własne zaplecze sprzętowe oraz platformę niezbędną do tworzenia oprogramowania. Zespół programistów nie musi się martwić o zasoby obliczeniowe (w postaci maszyn fizycznych lub wirtualnych) oraz przestrzeń na przechowywanie danych. Bezpieczeństwo infrastruktury również spoczywa na dostawcy usługi.
Historia modelu PaaS
Początki modelu PaaS sięgają 2006 roku. Wtedy na rynku zadebiutowała jedna z pierwszych usług tego typu – platforma programistyczna o nazwie Zimki. Darmowy hosting tworzonych na niej aplikacji oferowała brytyjska firma Fotango, prowadząca serwis internetowy do dzielenia się zdjęciami. Została wykupiona kilka lat wcześniej przez europejski oddział koncernu Canon.
Mniej więcej w tym samym czasie (2006) Amazon wystartował publicznie z własnymi usługami przechowywania danych S3 (rozwinięcie: Simple Storage Service) oraz chmury obliczeniowej EC2 (rozwinięcie: Elastic Compute Cloud).
Nadeszła era usług w modelu IaaS (Infrastructure as a Service, czyli infrastruktura jako usługa), która dała podwaliny dla modelu PaaS. Pierwszą usługę chmurową w 2008 roku zaczęło oferować również Google (platforma App Engine). Dwa lata później dołączył Microsoft (Azure).
Więcej o najpopularniejszych modelach cloud computingu i różnicach między nimi przeczytasz w artykule: Co to jest chmura obliczeniowa? Wprowadzenie i podstawowe pojęcia
Czynniki, które odpowiadają za popularność systemu Platform as a Service
Programiści chcą się skupić wyłącznie na pisaniu kodu i doskonaleniu swojego projektu. Dzięki wykorzystaniu usług PaaS proces tworzenia aplikacji przebiega szybko. Można również łatwo stworzyć Proof of Concept, czyli zweryfikować swoją koncepcję pomysłu na produkt. Błyskawiczne uruchamianie aplikacji w chmurze gwarantuje architektura kontenerów.
Używanie usług chmurowych w modelu PaaS redukuje całkowity koszt własności (TCO – Total Cost of Ownership). Za większość popularnych usług chmurowych płaci się w modelu pay as you go, czyli wyłącznie za zużycie zasobów dostawcy. Mniejsze projekty da się nawet zrealizować bez kosztów. Dla przykładu App Engine ma tzw. Free Tier, darmowy odnawialny limit, za którego użytkowanie klient nie musi płacić.
Więcej o usłudze App Engine dostępnej w Google Cloud Platform można przeczytać w naszym artykule: Szybszy development aplikacji z App Engine w Google Cloud Platform
Co wchodzi w skład systemu PaaS?
Na usługę chmurową oferowaną w modelu PaaS składają się dwa podstawowe komponenty. Pierwszy z nich stanowi sedno modelu IaaS (Infrastructure as a service, czyli infrastruktura jako usługa). To całe zaplecze sprzętowe (sieć, serwery, pamięć masowa oraz narzędzia do wirtualizacji) oraz związane z nim operacje utrzymania i modernizacji.
Drugi komponent odróżniający model PaaS od IaaS to szeroko pojęte oprogramowanie. W jego skład wchodzi system operacyjny, usługi pośredniczące (tzw. middleware), czyli m.in. narzędzia odpowiadające za gromadzenie, przetwarzanie i analizę danych, równoważenie i zabezpieczanie ruchu oraz środowisko uruchomieniowe.
Wszystkie powyższe elementy są zarządzane przez dostawcę usługi chmurowej. Używając nomenklatury motoryzacyjnej, model IaaS można porównać do leasingu auta. W takim układzie PaaS stanowi odpowiednik wypożyczenia pojazdu, a SaaS (Software as a Service, czyli oprogramowanie jako usługa) to po prostu taksówka.
Przechodząc z IaaS przez PaaS do SaaS zmniejsza się odpowiedzialność użytkownika, a zarazem zwiększa się odpowiedzialność dostawcy usługi chmurowej.
O zakresie odpowiedzialności dostawcy usług chmurowych i użytkownika można przeczytać więcej w artykule: Shared responsibility model – za co odpowiada dostawca, a za co użytkownik chmury?
Jaka jest przyszłość Platform as a Service?
Wraz ze wzrostem znaczenia automatyzacji i wykorzystywania nowoczesnych technologii, takich jak sztuczna inteligencja, rynek usług w modelu PaaS będzie rozwijać. Oferowanie gotowych rozwiązań skróci czas potrzebny na dostarczanie gotowego produktu na rynek, a ich programowanie stanie się jeszcze wygodniejsze.
Charakterystyka usług chmurowych (centra danych rozproszone po całym globie) zapewnia wysoką niezawodność i stabilność środowiska. Szeroka różnorodność i powiązane funkcje cloud computingu powinny zaspokoić potrzeby najbardziej wymagającego biznesu. Dodatkowe wsparcie ze strony oficjalnych partnerów, takich jak FOTC daje szereg dodatkowych korzyści biznesowych i finansowych dla zainteresowanych migracją.