Implementing time-critical functionalities with a distributed adaptive container architecture

Software developers increasingly need to include time-critical functionalities in their Web applications. Examples of these can be Internet-of-Things (IoT), gaming systems, instant messaging, video conferencing, and similar. Ensuring the Quality of Service (QoS) for such applications has been a challenging issue mostly due to runtime variations in the network quality between the clients and the service running in the Cloud. In this paper, we propose an adaptive multi-instance container-based architecture called Autonomous Self-Adaptation Platform (ASAP) that applies an edge computing concept with technologies, such as Docker and Kubernetes to facilitate the desired QoS for every single usage event of the time-critical functionality. We use a "File Upload" use case as an example to explore time-critical functionality. Each time a client needs to use the File Upload functionality, a specific setup, physical host selection and resources allocation is made in order to provide the desired QoS to that functionality.