Student Računarskog fakulteta Nikola Jovan Redžić je u sredu, 1. novembra 2023. godine odbranio diplomski rad na temu Mikroservisna arhitektura sistema za rezervacije bioskopskih karata pred komisijom koju su činili mentor dr Bojana Dimić Surla i član dr Dušan Vujošević.
U uvodu svog rada Nikola Jovan je istakao sledeće:
Cilj ovog diplomskog rada je da se istraži (pojasni, ispita, sagleda) primena mikroservisne arhitekture u razvoju sistema za rezervaciju karata za bioskop.
Mikroservisna arhitektura je moderan pristup u razvoju softvera, koji je stekao popularnost poslednjih godina. Karakteriše ga razbijanje velike aplikacije na manje, autonomne usluge koje međusobno komuniciraju preko API poziva. Ove usluge se razvijaju i primenjuju nezavisno, omogućavajući skalabilnost, fleksibilnost i lakše održavanje. Rezervacija karata za bioskop je uobičajena aktivnost u industriji zabave. Tradicionalni pristup izgradnji sistema za rezervaciju karata za bioskop obično uključuje monolitne arhitekture, gde su sve funkcionalnosti čvrsto povezane i integrisane u jednu aplikaciju. Ovakav pristup može da nosi sa sobom određena ograničenja i izazove, kao što su poteškoće u dodavanju novih funkcija, ograničena skalabilnost i velika zavisnost od hardvera. Štaviše, monolitne arhitekture mogu biti glomazne za održavanje i ažuriranje, jer sve promene napravljene u jednom delu sistema mogu imati neželjene posledice na druge delove sistema. Nasuprot tome, mikroservisna arhitektura nudi rešenje za ove izazove razbijanjem aplikacije na manje usluge koje se mogu nezavisno primeniti i skalabilne su (prilagodljive). Ove usluge se mogu razviti korišćenjem različitih tehnologija, omogućavajući korišćenje najboljih alata za svaku specifičnu funkcionalnost.
…
Glavna svrha ovog rada bila je da demonstrira skoro univerzalnu primenljivost mikroservisne arhitekture, čak i u slučajevima gde su tradicionalno korišćene monolitne arhitekture. Naravno, sa implementacijom mikroservisne arhitekture dolaze neka specifična razmatranja i izazovi, kao što je obezbeđivanje pravilne komunikacije između servisa i upravljanje skalabilnošću i otpornošću sistema. Upotreba mikroservisne arhitekture omogućava bolju skalabilnost, elastičnost i modularnost u aplikaciji. Ipak, tako složena arhitektura kao što je ova, bez obzira na prednosti koje ima, ne mora uvek da bude pravi izbor. Ponekad jednostavnija monolitna arhitektura može biti prikladnija.
Za visoko specijalizovane aplikacije, koje prioritet daju efikasnom i brzom izvršavanju, mikroservisna arhitektura možda nije najbolje rešenje. Komunikacija između servisa se obavlja pomoću HTTP Protokola, koji je skoro uvek sporiji od direktne komunikacije unutar jednog servera razvijenog baziranog na monolitnoj arhitekturi. Pored toga, troškovi upravljanja višestrukim servisima i koordinacija njihove interakcije mogu da, pored povećanja složenosti, uvedu i potencijalne tačke neuspeha. – zaključio je Nikola Jovan.
Fotografije sa odbrane dostupne su u galeriji.