Benedetti Priscilla, Femminella Mauro, Reali Gianluca, Steenhaut Kris
Department of Engineering, University of Perugia, via G.Duranti 93, 06125 Perugia, Italy.
Department of Electronics and Informatics (ETRO), Vrije Universiteit Brussel, Pleinlaan 2, 1050 Brussels, Belgium.
Sensors (Basel). 2021 Jan 30;21(3):928. doi: 10.3390/s21030928.
Serverless computing, especially implemented through Function-as-a-Service (FaaS) platforms, has recently been gaining popularity as an application deployment model in which functions are automatically instantiated when called and scaled when needed. When a deployment mode is used, the FaaS platform gives users the perception of constantly available resources. Conversely, when a mode is used, containers running the application's modules are automatically destroyed when the application has been executed. The latter can lead to considerable resource and cost savings. In this paper, we explore the suitability of both modes for deploying Internet of Things (IoT) applications considering a low resources testbed comparable to an edge node. We discuss the implementation and the experimental analysis of an IoT serverless platform that includes typical IoT service elements. A performance study in terms of resource consumption and latency is presented for the warm and cold start deployment mode, and implemented using OpenFaaS, a well-known open-source FaaS framework which allows to test a cold start deployment with precise inactivity time setup thanks to its flexibility. This experimental analysis allows to evaluate the aptness of the two deployment modes under different operating conditions: Exploiting OpenFaaS minimum inactivity time setup, we find that the cold start mode can be convenient in order to save edge nodes limited resources, but only if the data transmission period is significantly higher than the time needed to trigger containers shutdown.
无服务器计算,尤其是通过函数即服务(FaaS)平台实现的无服务器计算,最近作为一种应用程序部署模型越来越受欢迎,在这种模型中,函数在被调用时自动实例化,并在需要时进行扩展。当使用一种部署模式时,FaaS平台会让用户感觉到资源始终可用。相反,当使用另一种模式时,运行应用程序模块的容器在应用程序执行完毕后会自动销毁。后者可以带来可观的资源和成本节省。在本文中,我们考虑一个与边缘节点相当的低资源测试平台,探讨这两种模式对部署物联网(IoT)应用程序的适用性。我们讨论了一个包含典型物联网服务元素的物联网无服务器平台的实现和实验分析。针对热启动和冷启动部署模式,给出了资源消耗和延迟方面的性能研究,并使用OpenFaaS(一个著名的开源FaaS框架)来实现,由于其灵活性,该框架允许通过精确设置不活动时间来测试冷启动部署。这种实验分析允许在不同的操作条件下评估这两种部署模式的适用性:利用OpenFaaS的最小不活动时间设置,我们发现冷启动模式在节省边缘节点有限资源方面可能是方便的,但前提是数据传输周期明显高于触发容器关闭所需的时间。