Sorozatunk előző részében betekintést nyújtottunk abba, hogy miért is érdemes minden fejlesztőnek megismernie a modern, magasszintű alkalmazásplatformot is képező felhők szolgáltatásait, és miként teszik azok lehetővé számukra, hogy a korábbiaknál gyorsabban fejlesszenek ki és megbízhatóbban üzemeltethessenek termékeket. A mostani folytatásban részletesen bemutatjuk, hogy pontosan melyek az Azure magasszintű platformszolgáltatásai, és hogy milyen alkalmazások megvalósításában jöhetnek jól a fejlesztőknek.

App Service – Webes és mobilalkalmazásokhoz

Az Azure App Service szolgáltatáscsomag minden szükséges elemet biztosít olyan alkalmazások készítéséhez, amelyek egyetlen háttéralkalmazásból képesek webes és mobil klienseket is kiszolgálni. A többféle programnyelvet – .NET, Node.js, Java, PHP, Python – is támogató App Service a Web Apps, a Mobile Apps, a Logic Apps és az API Apps szolgáltatásokból áll.

Ezek közül a Web Apps és a Mobile Apps a webes és a mobilalkalmazásokhoz biztosít háttérszolgáltatásokat. Az API Apps segítségével bármely alkalmazás által biztonságosan használható API-kat tehetsz elérhetővé, és több tucat népszerű szolgáltatással kötheted össze alkalmazásaidat, köztük az Office 365-tel és a Salesforce.com-mal is. Végül a Logic Apps az üzleti folyamatok automatizálásában és a munkafolyamatok irányításában nyújt segítséget, és akár kódolás nélkül is használható, de igénybe veheted a Visual Studio teljes eszköztárát is.

A teljesen integrált fejlesztési és üzemeltetési (DevOps) környezet révén beépített tesztkörnyezet (staging), valamint visszaállítási (rollback), éles tesztelési és teljesítménytesztelési képességek segítenek az alkalmazások frissítésében. A részletes üzemeltetési naplók segítségével alkalmazásaid valamennyi területét nyomon követheted valós időben és visszamenőleg is. A mögöttes infrastruktúra kezeléséről az App Service gondoskodik, így nem kell az infrastruktúra karbantartásával és foltozásával foglalkoznod.

Mikor használható?

Az App Service ideális a webes és mobil back-endek fejlesztéséhez, ugyanis hatékonyság, skálázhatóság, teljesítmény és üzembe helyezési lehetőségek terén szinte minden követelményre képes választ adni. Akkor használd az App Service-t, ha az alkalmazásod egyedi funkcióinak kialakítására szeretnél összpontosítani, amihez egy készen működő infrastruktúrára van szükséged.

Az App Service jól használható olyan API-réteg készítésére is, amely a kapcsolódó API Management szolgáltatással biztonságosan elérhetővé tehető az ügyfelek, partnerek és munkatársak számára. Az App Service sok más Azure szolgáltatással – például a Redis Cache-sel vagy az Azure Traffic Managerrel – együtt is használható sokoldalú alkalmazások gyors megvalósításához és üzembe helyezéséhez.

Service Fabric – Mikroszolgáltatás-alapú alkalmazások

Az Azure Service Fabric platformot mikroszolgáltatásokra épülő, felhőméretben skálázható és folyamatosan rendelkezésre álló egyedi alkalmazások készítésére és menedzselésére használhatják a fejlesztők és az ISV-k. A mikroszolgáltatások finom szerkezetű, egymáshoz lazán kapcsolódó szolgáltatásokra épülő architekturális megközelítése jobb fejlesztői agilitást, felhőméretben való skálázhatóságot, önjavító és ellenálló-képességet, valamint folyamatos rendelkezésre állást tesz lehetővé.

Számos Microsoft-szolgáltatás, például az Azure SQL Database, az Azure DocumentDB, a Cortana, a Windows Intune és a Skype Vállalati verzió is a Service Fabric platformra épül. Pontosan az ezek alapjául szolgáló technológiát teszik elérhetővé a fejlesztői közösség számára is. A Service Fabric emellett bárhol használható a mikroszolgáltatás- alapú alkalmazások futtatására – akár az Azure-ban, akár saját adatközpontban vagy más felhőkben is –, ami maximális rugalmasságot biztosít.

Mikor használható?

A Service Fabric elsősorban a jól skálázható, folyamatos rendelkezésre állású, leállás nélkül frissíthető szolgáltatások kialakítására szolgál (mint amilyenek a Microsoft fent említett saját szolgáltatásai is). A Service Fabric új alkalmazások készítésekor és a meglévők újraírásakor is használható a mikroszolgáltatások előnyeinek kihasználásához, ha a felhőalapú architektúra mellett döntöttél, és folyamatos, üzemszünet nélküli frissítésre, elosztott skálázhatóságra, nagy teljesítményre, valamint rövid válaszidejű adatírási és -olvasási műveletekre van szükséged.

Cloud Services – Monolitikus alkalmazások

Az Azure Cloud Services volt a Microsoft eredeti platformszolgáltatása (PaaS), amely 2010-ben indult el. A fejlesztői igények által életre hívott Cloud Services a .NETalkalmazások egyszerű üzembe helyezését tette lehetővé a fejlesztők számára a felhő-infrastruktúra különböző előnyei, például a virtuális gépek és a virtuális hálózatok kihasználásával, mindezt anélkül, hogy a Windows Server és a mögöttes infrastruktúra alsóbb szintű részleteivel és konfigurálásával kellene foglalkozniuk.

Mikor használható?

A Cloud Services hatékony megoldást jelent, ha közvetlen hozzáférésre van szükséged a mögöttes infrastruktúrához, vagy közvetlenül szeretnéd az Internet Information Servicest (IIS) konfigurálni. Az App Service-hez hasonlóan itt sem kell az operációs rendszer foltozásával vagy frissítésével foglalkoznod.

A Cloud Servicest időnként használják az IIS-konfigurációkkal vagy külső összetevőkkel kapcsolatos függőségekkel rendelkező meglévő webalkalmazások migrálására is, ugyanis az automatikus skálázás mellett számos platformszintű előnyt is kínál a fejlesztők számára. A Cloud Services megjelenése óta a tervezési lehetőségek jelentős fejlődésen mentek keresztül.

Az App Service és a Service Fabric modernebb megközelítést képviselnek a PaaS terén, amelyet érdemes megfontolni az alkalmazások fejlesztéséhez.

Azure Functions – Eseményvezérelt végrehajtás

Az Azure Functions szerver nélküli számítási szolgáltatást kínál eseményvezérelt megoldásokhoz. A meglévő Azure-alkalmazásplatformot olyan képességekkel egészíti ki, amelyekkel a más Azure-szolgáltatásokban, szoftverszolgáltatásokban (például az Office 365-ben és a Salesforce.com-ban) vagy a helyi rendszerekben előforduló eseményekkel aktiválható kódot valósíthatsz meg.

A Functions szolgáltatásért csak akkor kell fizetned, ha a függvényed végrehajtása valóban megtörténik. Az intuitív, böngészőben használható kezelőfelület segítségével ütemezett vagy esemény által aktivált kódrészleteket hozhatsz létre számos különböző programnyelven.

Mikor használható?

Ha olyan független, automatizáltan működő függvényeket szeretnél létrehozni, amelyek az Azure-ban, szoftverszolgáltatásokban vagy helyi szolgáltatásokban bekövetkező eseményekre reagálnak. Ezáltal különböző üzemeltetési és értéknövelő funkciókkal bővítheted az alkalmazásodat a kódbázis közvetlen módosítása nélkül.

Ha például egy családbarátnak szánt webhelyedre a látogatók saját fotókat tölthetnek fel, akkor készíthetsz egy Azure-függvényt, amely figyeli a tárhelyen megjelenő új fényképeket, az Azure fejlett API-jainak segítségével azonosítja a nem megfelelő tartalmakat, és egy cenzúrázott verzióval helyettesíti az érintett képeket. Mindehhez egyáltalán nem kell módosítani a meglévő alkalmazás kódját – a függvény attól teljesen függetlenül helyezhető üzembe, és semmilyen hatást nem gyakorol az alkalmazásra.

Összefoglalás

Az Azure a programozási nyelvek, keretrendszerek, eszközök, adatbázisok és architektúrák legszélesebb választéka mellett a nyílt forráskódú és a keresztplatformos technológiákat is támogatja, hogy a legtöbbet hozhasd ki minden sor megírt kódból. A „Write once, run anywhere” szlogen, vagyis az újrahasznosíthatóság elve régóta tartja magát az iparágban, de az Azure révén páratlan lehetőséged van arra, hogy például az Azure Stack segítségével több helyen is változatlan formában futtasd a kódodat. Nincs szükséged másra, mint kedvenc eszközeidre és tapasztalatodra, és gyakorlatilag bármilyen alkalmazást futtathatsz saját adatforrásod használatával a saját operációs rendszereden és eszközödön.

A modern fejlesztő az egyedi kódot a legjobb kész szolgáltatásokkal ötvözve olyan alkalmazásokat tud „komponálni”, amelyek nem olyan régen még elképzelhetetlenek voltak. Ezek az alkalmazások ráadásul elképesztő sebességgel megvalósíthatók. A világon már számos vállalat használja az Azure-t új alkalmazások fejlesztésére és a meglévők kibővítésére az üzleti működés támogatása és átalakítása érdekében. Te is szeretnéd követni a példájukat?

A folytatásban...

A sorozat következő részeiben a felhőkön leggyakrabban használt alkalmazásszintű szolgáltatásokat (pl. adatbáziskezelés, webszerver, médiakiszolgáló, stb.) vesszük sorra, és mutatjuk be az ezen feladatok ellátására az Azure-on kulcsrakészen elérhető megoldások közül a legnépszerűbbeket. Aki addig nem bírja ki, az már most elolvashatja a Microsoft kifejezetten fejlesztőknek kidolgozott Azure útmutatóját, amit innen tud letölteni.