Businesses have made increasing adoption and incorporation of cloud technology into internal processes in the last decade. The cloud-based deployment provides on-demand availability without active management. More recently, the concept of cloud-native application has been proposed and represents an invaluable step toward helping organizations develop software faster and update it more frequently to achieve dramatic business outcomes. Cloud-native is an approach to build and run applications that exploit the cloud computing delivery model's advantages. It is more about how applications are created and deployed than where. The container-based virtualization technology, such as Docker and Kubernetes, serves as the foundation for cloud-native applications. This paper investigates the performance of two popular computational-intensive applications, big data, and deep learning, in a cloud-native environment. We analyze the system overhead and resource usage for these applications. Through extensive experiments, we show that the completion time reduces by up to 79.4% by changing the default setting and increases by up to 96.7% due to different resource management schemes on two platforms. Additionally, the resource release is delayed by up to 116.7% across different systems. Our work can guide developers, administrators, and researchers to better design and deploy their applications by selecting and configuring a hosting platform.
翻译:过去十年间,企业在其内部流程中对云技术的采用与融合日益增加。基于云的部署提供了按需可用的能力,而无需主动管理。近年来,云原生应用的概念被提出,它代表了帮助组织更快开发软件并更频繁地更新以实现显著业务成果的宝贵一步。云原生是一种构建和运行应用程序的方法,旨在充分利用云计算交付模式的优势。其重点更在于应用程序如何创建和部署,而非部署在何处。以容器为基础的虚拟化技术,例如Docker和Kubernetes,构成了云原生应用的基础。本文研究了两种流行的计算密集型应用——大数据和深度学习——在云原生环境中的性能表现。我们分析了这些应用的系统开销与资源使用情况。通过大量实验,我们发现:通过更改默认设置,任务完成时间最多可减少79.4%;而由于两个平台上不同的资源管理方案,完成时间最多可增加96.7%。此外,在不同系统中,资源释放最多延迟了116.7%。我们的工作可以指导开发者、管理员和研究人员通过选择和配置托管平台,更好地设计和部署其应用。