posted on 2017-04-13, 00:00authored byGarrett McGrath
Following the lead of AWS Lambda, services such as Azure Functions, Google Cloud Functions, Apache OpenWhisk, Iron.io IronFunctions, and OpenLambda have emerged as a new cloud offering coined 'serverless computing', where application logic is split into functions and executed in response to events. In this work, I detail real world applications utilizing these platforms, and explore how existing applications can be adapted to run in serverless environments. Additionally, I present the design of a novel performance-oriented serverless computing platform implemented in .NET, deployed in Microsoft Azure, and utilizing Windows containers as function execution environments. Metrics are proposed to evaluate the execution performance of serverless platforms and conduct tests on the prototype as well as existing commercial platforms. These measurements show the prototype achieving greater throughput than other platforms at most concurrency levels, and I examine the scaling and instance expiration trends in the implementations.
History
Date Created
2017-04-13
Date Modified
2018-10-26
Research Director(s)
Paul R. Brenner
Degree
Master of Science in Computer Science and Engineering