Alkalmazásfejlesztés microservice architektúrával

OData támogatás
Konzulens:
Dr. Kővári Bence András
Automatizálási és Alkalmazott Informatikai Tanszék

Webalkalmazások fejlesztéséhez már nagyon régóta használják a háromrétegű architektúrát. Habár ekkor az alkalmazás több logikai egységből áll, ennek ellenére azt egy monolitikus egységként kezelik. Emiatt, ha azon bármilyen változtatást végeznek, az könnyen hibát okozhat a rendszer egyéb komponenseiben, illetve módosítás után a programot mindig újra kell fordítani és telepíteni. További probléma az alkalmazás skálázása és túl komplexé válása. A microservice architektúra megoldja ezen problémákat, azáltal, hogy az ellátott üzleti feladat alapján kisebb, lazán csatolt komponensekre bontja az alkalmazást, melyek egymással kommunikálnak. Ezt alkalmazva viszont olyan problémákba ütközhetünk, melyek eddig nem voltak jelen. A telepítés és üzemeltetés bonyolultabbá válik a sok különálló szoftver miatt. Mivel több külön folyamat kezeli az alkalmazás adatait, ezért a rendszer konzisztenciájának fenntartása komolyabb kihívást jelent, valamint a felhasználói autentikáció is bonyolultabbá válik.

Dolgozatomban ezen problémákra keresek egy lehetségest megoldást, mindegyik problémára egy felhasználható technológát és ahhoz egy megvalósítási példát adva. Ehhez egy egyszerű minta alkalmazást készítek és követem végig annak fejlesztési lépéseit. Az alkalmazás elkészültével látható, hogy hogyan zajlik a token alapú felhasználói autentikáció egy ilyen elosztott rendszerben, hogy milyen módon lehet esemény alapú kommunikációval biztosítani az adat konzisztenciát, és hogy hogyan segít a containerization technológia a mikroszolgáltatások telepítésében és üzemeltetésében.

A dolgozatban bemutatott megoldás, csak egy a sok lehetséges közül, és nem minden esetben használható, de jól bemutat néhányat az architektúra alkalmazásával járó problémák közül.

Letölthető fájlok

A témához tartozó fájlokat csak bejelentkezett felhasználók tölthetik le.