\pagenumbering{roman}
\setcounter{page}{1}

\selecthungarian

%----------------------------------------------------------------------------
% Abstract in Hungarian
%----------------------------------------------------------------------------
\chapter*{Kivonat}\addcontentsline{toc}{chapter}{Kivonat}

Napjainkban egyre elterjedtebb a webes alkalmazások fejlesztése során kisebb részegységek fejlesztése, melyeknek saját felelősségük is lehet. Ezzel a kódbázis növekedése nem vonzza maga után a kódbázis átláthatatlanságát. Erre egy megold\'as a Function as a Service architekt\'ura.

Fennáll viszont a probléma, hogy az egyes részek akkor is készen állnak kérések fogadására, ha nincs rájuk szükség, ezzel feleslegesen foglalva erőforrásokat. Szintúgy gyakori probléma a váratlanul megjelenő, nagy terhelésre a lassú válaszreakció. Ez a probléma legtöbbször nem egy rosszul elkészített alkalmazásból adódik, hanem a futtató környezet adottsága. 

A Knative ezeket a problémákat aldja meg. Lehetővé teszi az egyes részegységek nullára skálázását, valamint képesek szolgáltatások gyors skálázására a megjelenő konkurens kérésekkel arányosan. 

A szakdolgozat keretein belül a Knative ezen funkciójának működését vizsgálom, összevetve viselkedését a Kubernetes rendszerben elérhető tradicionális megoldással, valamint ezen vizsg\'alattal kapcsolatos munkafolyamatokat automazi\'alom.

\vfill
\selectenglish


%----------------------------------------------------------------------------
% Abstract in English
%----------------------------------------------------------------------------
\chapter*{Abstract}\addcontentsline{toc}{chapter}{Abstract}

Nowadays breaking web based applications into small components each with their own responsibilities is common practice. By doing this a growing codebase does not become too complicated to manage. One such architecture is Function as a Service.

However, these functions are ready to accept requests even when they are not needed thereby reserving resources unnecessarily. Another problem is the typically slow reaction to a sudden rise of the incoming request rate. This is not due to bad design by application developers, but a characteristic of runtime systems.

Knative gives an answer to these problems. It is able to scale application components to zero and scale them quickly proportional to the number of concurrent requests.

In my thesis I analyze these functions of Knative and compare them to traditional scaling available in Kubernetes as well as automate workflows relating to this analysis.

\vfill
\selectthesislanguage

\newcounter{romanPage}
\setcounter{romanPage}{\value{page}}
\stepcounter{romanPage}
