izpis_h1_title_alt

Bremensko testiranje zmogljivosti spletne aplikacije v oblaku
ID PRAZNIK, JANŽE (Author), ID Mraz, Miha (Mentor) More about this mentor... This link opens in a new window, ID Koželj, Klemen (Comentor)

.pdfPDF - Presentation file, Download (2,28 MB)
MD5: CD28D9663FC42AAE592C03F099DF7690

Abstract
S problemom zmogljivosti se sooča veliko spletnih aplikacij. Ta se v večini primerov kaže kot počasno odzivanje ali zakasnitev delovanja aplikacije proti uporabniku. Zmogljive aplikacije nudijo uporabniku boljšo uporabniško izkušnjo, ki lahko posledično pomeni poslovno prednost za podjetje, ki je aplikacijo razvilo. Vse bolj razširjene postajajo takšne spletne aplikacije, ki so v celoti postavljene v oblaku. Aplikacija, ki je predmet našega testiranja, je primer take aplikacije. V celoti je postavljena v oblaku s pomočjo Amazonovih oblačnih storitev imenovanih AWS oz. Amazon Cloud Services. Aplikacijo delimo na čelni del, ki predstavlja uporabniški vmesnik in zaledni del, ki skrbi za strežbo zahtev in obdelavo podatkov aplikacije. V nalogi smo bremensko testirali zaledni del z uporabo orodja Artillery io. Ta v scenarijih, ki jih definiramo v skriptah, generira navidezne uporabnike. Slednji nato pošiljajo transakcijske zahteve in s tem obremenjujejo zaledni del aplikacije. Med izvajanjem skript smo spremljali dve metriki in sicer izkoriščenost procesorja in zasedenost delovnega pomnilnika. Vrednosti teh dveh metrik smo spremljali v Amazonovi konzoli in jih nato grafično predstavili v odvisnosti od generiranega prometa proti zalednemu delu. Meritve smo izvajali v dveh okoljih in sicer v testnem in produkcijskem. Okolji sta se razlikovali po dodeljenih resursih. Najprej smo meritve izvedli v testnem okolju. Ugotovili smo, da njegovi resursi niso bili nastavljeni učinkovito. V večini primerov je izkoriščenost procesorja dosegla občutno višjo vrednost od zasedenosti delovnega pomnilnika. V produkcijskem okolju smo zato resurse poskusili nastaviti tako, da bi bili koriščeni bolj učinkovito. V nekaterih primerih nam je celo uspelo skoraj izenačiti vrednosti izkoriščenosti procesorja in zasedenosti delovnega pomnilnika. Ugotovili smo, da faktor povečanja količine resursov ne raste premo sorazmerno s faktorjem povečanja generiranih zahtev navideznih uporabnikov, ki jih aplikacija še lahko obdela brez padca njene zmogljivosti.

Language:Slovenian
Keywords:bremensko testiranje, mikrostoritev, aplikacija v oblaku, AWS, Artillery io, razvoj aplikacije
Work type:Bachelor thesis/paper
Typology:2.11 - Undergraduate Thesis
Organization:FRI - Faculty of Computer and Information Science
Year:2023
PID:20.500.12556/RUL-153005 This link opens in a new window
COBISS.SI-ID:178792451 This link opens in a new window
Publication date in RUL:14.12.2023
Views:1130
Downloads:103
Metadata:XML DC-XML DC-RDF
:
Copy citation
Share:Bookmark and Share

Secondary language

Language:English
Title:Load testing the performance of a web application in the cloud
Abstract:
Many web applications suffer from performance issues. In most cases, this manifests itself as a slow response or latency of the application towards the user. High-performance applications offer a better user experience, which can in turn be a business advantage for the company that developed the application. Such web applications, deployed entirely in the cloud are becoming more and more widespread. The application that we are testing is an example of such an application. It is deployed entirely in the cloud using Amazon's cloud services called AWS. The application is divided into a frontend part, which is the user interface, and a backend part, which is responsible for serving requests and processing the application's data. In this thesis, we load-test the backend using the Artillery io tool. This generates virtual users in scenarios defined in scripts. The latter then send transactional requests and thus put a load on the backend of the application. During the execution of the scripts, we monitored two metrics, namely CPU utilisation and RAM occupancy. The values of these two metrics were monitored in the Amazon console and then presented graphically as a function of the traffic generated towards the backend. Measurements were carried out in two environments, a staging environment and a production environment. The two environments differed in the resources allocated. First, the measurements were taken in the staging environment. We found that its resources were not configured efficiently. In most cases, the CPU utilisation reached a value significantly higher than the RAM occupancy. In the production environment, we therefore tried to set the resources to be used more efficiently. In some cases, we even managed to almost equalise the CPU utilisation and RAM occupancy values. We found that the resource scaling factor does not grow as much in proportion to the scaling factor of the virtual user requests generated, which can still be processed by the application without degrading its performance.

Keywords:load testing, microservice, cloud application, AWS, Artillery io, application development

Similar documents

Similar works from RUL:
Similar works from other Slovenian collections:

Back