Hatékony REST interfész alapú kommunikáció .NET platformon

OData támogatás
Konzulens:
Nagy Ákos
Automatizálási és Alkalmazott Informatikai Tanszék

Az okostelefonok, táblagépek, és egyéb hálózati csatlakozásra képes hordozható eszközök elterjedése rengeteg lehetőséget nyit meg a szoftverfejlesztők előtt, azonban ezen eszközök egyik általános jellemzője, hogy a számítási képességük sok esetben nem elegendő összetett alkalmazások futtatására.

Mivel ezzel egyidőben az internet hozzáférési lehetőségek is robbanásszerűen növekednek egy általánosan elterjedt megoldássá váltak a kliens-szerver architektúrájú szoftverek, amelyek kiküszöbölik a számítási kapacitás hiányát. Ezen belül is napjaink egyik legelterjedtebb architektúrális mintája a Representational State Transfer (REST).

A .NET platformon REST alkalmazások készítésére az ASP.NET Web API keretrendszer ad lehetőséget. Ez biztosítja a megfelelő megoldásokat a kérések megfelelő metódusokba irányítására, hitelesítésre, illetve a kérések és válaszok üzenetekbe ágyazására. Ez utóbbi a sorosítás folyamata mely során az objektumot, adatot olyan formára konvertáljuk, hogy azt át tudjuk küldeni a hálózaton, majd visszakonvertáljuk, hogy a célalkalmazás fel tudja használni. Mivel ez a lépés minden üzenetváltás esetén megkerülhetetlen szereplő ezért a hatékonyságának növelésével az egész rendszer jelentősen gyorsítható.

A kommunikáció ilyen célú optimalizálására egy kutatási projekt során készült .NET platformon egy sorosító modul, ám ennek vannak hiányosságai, amelyek miatt egyelőre ipari környezetben még nem használható. Munkám során megvizsgáltam ennek a projektnek a hiányosságait és megkíséreltem a hiányosságok egy részének javítását. Majd megvizsgáltam a Web API sorosítási megoldásainak bővítési lehetőségét, a kutatási projektben készült modul szempontjából, és elvégeztem a szükséges módosításokat a keretrendszer kibővítéséhez, így le tudtam cserélni a beépített megoldást a javított modulra. Ezután kidolgoztam egy megoldást melynek segítségével különböző méréseket tudtam elvégezni a beépített és a saját megoldásom összehasonlítása érdekében, mind sebesség mind pedig adatméret szempontjából. Ez a mérési keretrendszer magába foglalt egy webszolgáltatás amibe beépítettem az elkészült sorosítót, illetve egy kliens alkalmazást ami képes volt meghívni a szolgáltatást, és lemérni a különböző teljesítményjellemzőket.

Letölthető fájlok

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