Serverless Computing Model For Edge Applications
In this project you are expected to implement a serverless computing framework for running applications on the edge.
Serverless computing typically allows its users to define the application in terms of functions, events and triggers. In this context, developers are not explicitly aware of the computational infrastructure details such as VMs or containers. Although, at first sight this means a more frictionless development effort, serverless computing is not without its technical challenges. One example challenge is the cold-start problem and there are others as well.
Typical roadmap for this project is as follows:
- Assess existing open source serverless projects (OpenFaaS, ApacheWhisk, Kubeless etc) in terms of their compatibility for edge computing. This phase involves some literature search as well as running preliminary experiments.
- Design and implemention of the framework based on the open source project choosen. Test it on basic scenarios. (This phase may involve code contribution for the choosen open source serverless project)
- Detailed performance evaluation of the framework on certain domains or use cases. One possible use case can be AR/VR based remote assistance, however, there are a wide variety of interesting edge applications especially in the AI/ML domain. Project team can choose their own domain as well for this phase.