Avaliação de modelos de implantação de funções serverless no serviço AWS Lambda
Resumo
Com o avanço da computação em nuvem e serviços serverless, mais foco essa área vem ganhando nos últimos anos. Provedores de nuvem oferecem serviços relacionados a serverless, e em particular, a Amazon disponibiliza o AWS Lambda para a criação de funções serverless. Existem ao menos duas formas de implantá-los: através da compressão da pasta do projeto, que contém o código fonte e arquivos executáveis, em formato ZIP; e a segunda maneira na qual a aplicação e suas dependências estão em uma imagem de contêiner. Dependendo da abordagem escolhida, o desempenho, o custo e o tempo de inicialização podem variar. Levando em consideração essas métricas, este trabalho visa compará-las entre as duas abordagens de implantação mencionadas e tem como objetivo descobrir se uma das abordagens apresenta ser mais adequada do que outra. Experimentos conduzidos visando tal comparação demonstram que a criação de funções utilizando pastas compactadas apresentam vantagens, principalmente no tempo de inicialização da função quando está em modo de partida fria, e no custo.
Referências
AWS, “AWS Lambda now supports container images as a packaging format” 2020, accessed: 2024-08-17. [On-line]. Available: [link]
T. G. Peter Mell, “The NIST Definition of Cloud Comptuing” 2011, accessed: 2024-08-10. [Online]. Available: [link]
P. Vahidinia, B. Farahani, and F. S. Aliee, “Cold start in serverless computing: Current trends and mitigation strategies” in 2020 International Conference on Omni-layer Intelligent Systems (COINS), 2020, pp. 1–7.
J. Manner, M. Endreß, T. Heckel, and G. Wirtz, “Cold Start Influencing Factors in Function as a Service” in 2018 IEEE/ACM International Conference on Utility and Cloud Computing Companion (UCC Companion), Dec. 2018, pp. 181–188.
T. Siddiqui, S. A. Siddiqui, and N. A. Khan, “Comprehensive analysis of container technology” in 2019 4th International Conference on Information Systems and Computer Networks (ISCON), 2019, pp. 218–223.
M. J. Scheepers, “Virtualization and containerization of application infrastructure: A comparison” in 21st twente student conference on IT, vol. 21, 2014, pp. 1–7.
AWS, “What is aws lambda?” 2024, accessed: 2024-08-17. [Online]. Available: [link]
AWS, “Lambda instruction set architectures (arm/x86)” 2024, accessed: 2024-08-17. [Online]. Available: [link]
AWS, “Using Podman with Amazon ECR - Amazon ECR” 2024, accessed: 2024-09-12. [Online]. Available: [link]
AWS, “Pushing a Docker image to an Amazon ECR private repository” 2024, accessed: 2024-09-12. [Online]. Available: [link]
AWS “What is Amazon Elastic Container Registry?” 2024, accessed: 2024-08-17. [Online]. Available: [link]
J. Dantas, H. Khazaei, and M. Litoiu, “Application Deployment Strategies for Reducing the Cold Start Delay of AWS Lambda” in 2022 IEEE 15th International Conference on Cloud Computing (CLOUD), 2022, pp. 1–10.
M. Elsakhawy and M. Bauer, “Performance analysis of serverless execution environments” in 2021 International Conference on Electrical, Communication, and Computer Engineering (ICECCE), 2021, pp. 1–6.
M. Villamizar, O. Garcés, L. Ochoa, H. Castro, L. Salamanca, M. Verano Merino, R. Casallas, S. Gil, C. Valencia, A. Zambrano, and M. Lang, “Cost comparison of running web applications in the cloud using monolithic, microservice, and AWS Lambda architectures” Service Oriented Computing and Applications, vol. 11, 06 2017.
N. Rodríguez, M. Murazzo, A. Martín, and M. Rodríguez, “Evaluation of programming languages for memory usage, scalability, and cold start, on aws lambda serverless platform as a case study” in Computer Science–CACIC 2023: 29th Argentine Congress of Computer Science, Lujan, Argentina, October 9-12, 2023, Revised Selected Papers, vol. 2123. Springer Nature, 2024, p. 33.
AWS, “Amazon Elastic Container Registry pricing” 2024, accessed: 2024-08-20. [Online]. Available: [link]