Abstract

Serverless computing has emerged as a new application design and execution model. The serverless application is decomposed into granular logical functional units that run on small, low cost, and short-lived compute containers. These containers are dynamically managed by FaaS service providers. Users are charged only for the compute and storage resources needed for the execution of their piece of code. Cloud functions have restrictions on memory usage and execution time-out as imposed by their service providers. Due to this limitation, compute intensive tasks time-out before their completion and hence unable to harness the power of serverless computing. In this paper, we propose a design approach for serverless applications. It exploits data parallelism in embarrassingly parallel computations. Using our approach, compute bound tasks that are implemented in conventional design and fail in serverless environment can get executed successfully without worrying about the limitations imposed by serverless platforms. For this, several extensive experimentations using Amazon’s AWS Lambda service have been performed. Further, a serverless application designed using our approach exploits the auto-scalability feature of serverless computing to achieve faster execution benefit.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call