Load Testing of Containerised Web Services
Independent thesis Advanced level (professional degree), 20 credits / 30 HE creditsStudent thesis
Load testing web services requires a great deal of environment configuration and setup. This is especially apparent in an environment where virtualisation by containerisation is used with many moving and volatile parts. However, containerisation tools like Docker offer several properties, such as; application image creation and distribution, network interconnectivity and application isolation that could be used to support the load testing process. In this thesis, a tool named Bencher, which goal is to aid the process of load testing containerised (with Docker) HTTP services, is designed and implemented. To reach its goal Bencher automates some of the tedious steps of load testing, including connecting and scaling containers, collecting system metrics and load testing results to name a few. Bencher's usability is verified by testing a number of hypotheses formed around different architecture characteristics of web servers in the programming language Ruby. With a minimal environment setup cost and a rapid test iteration process, Bencher proved its usability by being successfully used to verify the hypotheses in this thesis. However, there is still need for future work and improvements, including for example functionality for measuring network bandwidth and latency, that could be added to enhance process even further. To conclude, Bencher fulfilled its goal and scope that were set for it in this thesis.
Place, publisher, year, edition, pages
2016. , 55 p.
UPTEC IT, ISSN 1401-5749 ; 16003
Engineering and Technology
IdentifiersURN: urn:nbn:se:uu:diva-304831OAI: oai:DiVA.org:uu-304831DiVA: diva2:1034157
Master of Science Programme in Information Technology Engineering
Elsts, AtisNordén, Lars-Åke