Graduate papers
  
Description of the graduate paper
Form of studies Bachelor
Title of the study programm Computer Systems
Title in original language Mikroservisu komunikācijas metodes veiktspējas analīze
Title in English Performance Analysis of Microservices Communication Methods
Department Faculty Of Computer Science Information Tehnology And Energy
Scientific advisor Aleksejs Jurenoks
Reviewer Mihails Ivanovs
Abstract Bakalaura darba 1. tips: Moderno risinājumu izpēte. Mikroservisu arhitektūra ir pieeja izstrādāt lietotni kā nelielu servisu komplektu. Lēmums par to, kā mikroservisi sazinās viens ar otru, ir viens no svarīgākajiem lēmumiem, kas jāpieņem, izstrādājot mikroservisu lietotni. Bakalaura darba mērķis ir izpētīt mikroservisu komunikācijas metožu standartus un veikt to izmantošanas ietekmi uz sistēmas veiktspējas salīdzinājumu. Darbā tika noteikts kā mikroservisu komunikācijas metodes sadalās uz diviem komunikācijas stiliem: sinhrona un asinhrona komunikācija. Katram komunikācijas stilam tiek aprakstītas un salīdzinātas komunikācijas metodes. Sinhronas komunikācijas stila metode ir HTTP API komunikācija. Asinhronas komunikācijas stila metode ir ziņojumu rindu un pub/sub komunikāciju kombinācija. Darbā gaitā tika izveidotas divas testa mikroservisu lietotnes ar vienādu funkcionalitāti, bet ar atšķirīgam komunikācijas metodēm. Izmantotas komunikācijas metodes ir HTTP API un ziņojumu rinda ar pub/sub. Lietotnes tiek izstrādātas ar Spring Boot ietvaru, asinhrona komunikācijas lietotne izmanto RabbitMQ brokeru priekš ziņojumapmaiņas nodrošināšanai. Uz lietotnēm tiek veikti slodzesspējas testi, lai salīdzinot tos atbildes laika, caurlaidspējas, saimnieksistēmas procesora un izmantotās atmiņas slodzes radītājus. Pēc slodzesspējas testiem tiek secināts, ka lietotne ar sinhronu HTTP API komunikāciju, pie maza lietotāja skaita, darbojas labāk, nekā asinhronas komunikācijas lietotne, pēc visiem radītājiem, izņemot caurlaidspēju. Tomēr palielinoties lietotāju skaitam, asinhronas komunikācijas lietotnes, apskatāmu radītāju vērtības vispirms izlīdzinājās ar sinhronas komunikācijas lietotnes radītāju vērtībām, un pēc tam ar vēl lielāko lietotāju skaitu apsteidza tos. Iegūtie secinājumi tiek pārbaudīti izmantojot reālu lietotni ar sinhronu HTTP API komunikāciju. Tika izstrādāta lietotnes kopija izmantot ziņojumu rindu un pub/sub komunikāciju (ar RabbitMQ brokeru). Ar lietotnēm tika veikti līdzīgi slodzesspējas testi. Iegūtie slodzesspējas testu rezultāti bija līdzīgi testa lietotņu testu rezultātiem. Atslēgvārdi: mikroservisu komunikācija, sinhrona un asinhrona komunikācija, HTTP API, ziņojumu rindas, pub/sub Darbs sastāv no 56 lappusēm, tajā ir 18 attēlu un 8 tabulas, tika izmantoti 55 informācijas avoti.
Keywords mikroservisu komunikācija, sinhrona un asinhrona komunikācija, HTTP API, ziņojumu rindas, pub/sub
Keywords in English microservice communication, synchronous and asynchronous communication, HTTP API, message queues, pub/sub
Language lv
Year 2024
Date and time of uploading 29.05.2024 00:00:41