Student Računarskog fakulteta Vukašin Marković je u petak, 10. decembra 2021. godine odbranio diplomski rad na temu Mikroservisna arhitektura u razvoju serverskog dela aplikacije za rezervaciju knjiga pred komisijom koju su činili mentor, dr Bojana Dimić Surla i član, dr Milan Vidaković.
U uvodu svog rada Vukašin je istakao sledeće:
Pojava Interneta i razvijanje softvera na vebu donela su rešenja i olakšicu u raznim industrijama i firmama. Kako je broj korisnika koji koristi softver rastao i kompleksnost samog softvera je rasla. Problemi su se javili u standardnom pravljenju softvera jer se cela aplikacija pravila kao jedna celina (monolit) koja je imala nedostatke:
• Otkaz nekog dela aplikacije ili dodavanje dovodio je do zastoja celog sistema
• Komponente usko povezane što dovodi do težeg održavanja
• Skaliranje aplikacije loše jer usred pojave većeg broja korisnika sistem postaje opterećen i odziv dugo traje
Rešenje ovog problema je mikroservisna arhitektura sistema. Aplikacija se razdvaja na nezavisne celine (mikroservise), gde svaka celina ima jednu odgovornost i ima komunikaciju sa drugim nezavisnim celinama.
…
Pristup deljenja baze podataka između mikroservisa ima svojih nedostataka. Problem koji se javlja ako dva mikroservisa dele jednu bazu je veća povezanost između njih, jer promena u strukturi podataka unutar baze utiče na sve servise koji je koriste i gubi se jedna od ključnih karakteristika mikroservisne arhitekture, a to je precizna podela odgovornosti nad podacima između mikroservisa. Takođe, ako baza otkaže, oba mikroservisa su neupotrebljiva. Rešenje bi bilo da Book servis i Order servis imaju odvojene baze i da npr. ako Book servisu treba informacija od Order servisa, Order servis ce pročitati iz njegove baze i poslati nazad book servisu. Ovim načinom smo povećali nezavisnost između dva mikroservisa ali smo takođe povećali komunikaciju između njih, što rezultuje u sporijem odzivu. – zaključio je Vukašin.
Fotografije sa odbrane dostupne su u galeriji.