Monolitikus Java EE alkalmazás migrációja microservices architektúrára

OData támogatás
Konzulens:
Imre Gábor
Automatizálási és Alkalmazott Informatikai Tanszék

Az idő előrehaladtával egyre-másra jelennek meg újabb és újabb technológiák, mérnöki, tervezési módszerek, amelyek a korábbiakhoz képest valami egészen új szemléletet hoznak be, a fejlesztés, vagy az alkalmazás hatékonyságának növelésének érdekében. Ez hatványozottan igaz az informatika világára, ahol akár évente lehetne mondani egy új, feltörekvő trendet, amire azt lehet mondani, hogy ez lesz a jövőben követendő fő irányvonal – ezek egy része beválik, egy része nem.

Jelenleg az egyik legfeltörekvőbb ilyen irányvonal a microservice (vagy microservices) architektúra követése, mellyel a korábbi monolitikus szemléletet hivatottak felváltani, hogy az (elsősorban backend) alkalmazások fejlesztése gyorsabban és hatékonyabban történhessen, miközben maguk az alkalmazások is még komolyabb hibatűréssel rendelkeznek a kitelepítési és üzemeltetési jellemzők miatt. Emiatt az utóbbi években a Docker, Kubernetes, OpenShift technológiák, DevOps és agilis módszertanok népszerűsége és előfordulása drasztikus növekedést mutat.

A probléma ezzel az, hogy mi legyen a korábbi monolitikus alkalmazásokkal? Ezek természetesen továbbra is működőképesek, és funkcionalitás terén teljesen rendben vannak – de ha tovább kell ezeket fejleszteni, akkor nem lehet a DevOps gyakorlatot például olyan hatékonyan űzni, az üzemeltetést pedig közel sem lehet olyan hatékonyan elvégezni, mint egy microservice architektúrára készített alkalmazással.

A feladat tehát adott: a meglévő monolitikus alkalmazásokat át kell migrálni ebbe az új, microservices környezetbe. A szakdolgozatomban ezzel a problémakörrel fogok foglalkozni: először is, milyen általános leírása, szükséges feltételei vannak egy ilyen migrálásnak, amit mindenképpen végre kell hajtani. Milyen problémákra lehet számítani, mire érdemes odafigyelni? Ezután pedig az Alerant Zrt. és az Erste Bank Zrt. által számomra átadott, viszonylag egyszerű alkalmazáson fogom demonstrálni ezeknek a megtervezett lépéseknek a végrehajtását, levonni belőle a tanulságokat, és bemutatni, hogy az új alkalmazás funkcionalitásban megegyezik (vagy esetleg még éppen észszerűsödött is) az eredetihez képest, és persze egy kis összehasonlítást végezni a teljesítmény és a karbantartás szemszögéből.

Letölthető fájlok

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