Statera: Um balanceador de carga rápido e flexível para aplicações HTTP na nuvem

  • Matheus H. Freitas UFV
  • Vitor B. Souza UFV

Resumo


O balanceamento de carga é uma função essencial na computação em nuvem, e os balanceadores de carga de camada 4, notadamente, são amplamente utilizados para esse fim. Contudo, esse tipo de balanceador apresenta duas limitações típicas: 1) a impossibilidade de balanceamento baseado no conteúdo do tráfego; 2) generalização, não apresentando funções importantes para protocolos específicos. Neste trabalho nós apresentamos o Statera, um balanceador de carga flexível e específico para o protocolo HTTP, cujo objetivo é promover escalabilidade e sanar as limitações dos balanceadores de carga de camada 4. Ao longo do texto, nós expomos em detalhes a arquitetura do Statera e apresentamos resultados obtidos em diferentes cenários.

Referências

Amazon Web Services (2022). Compute on aws. [Online. Acesso em 7 jul. 2022].

Azure (2022). Application gateway. [Online. Acesso em 7 jul. 2022].

Bourke, T. (2001). Server Load Balancing. Help for network administrators. O'Reilly Media, Incorporated.

Chen, T.-S. and Chen, K.-L. (2004). Balancing workload based on content types for scalable web server clusters. In 18th International Conference on Advanced Information Networking and Applications, 2004. AINA 2004., volume 2, pages 321-325. IEEE.

Dymora, P., Mazurek, M., and Sudek, B. (2021). Comparative analysis of selected open-source solutions for traffic balancing in server infrastructures providing www service. Energies, 14(22):7719.

Gandhi, R., Hu, Y. C., and Zhang, M. (2016). Yoda: A highly available layer-7 load balancer. In Proceedings of the Eleventh European Conference on Computer Systems, pages 1-16.

Google Cloud Plataform (2022). Cloud load balancer. [Online. Acesso em 7 jul. 2022].

k6 (2022). k6 documentation. [Online. Acesso em 11 jul. 2022].

Lee, R. and Jeng, B. (2011). Load-balancing tactics in cloud. In 2011 International Conference on Cyber-Enabled Distributed Computing and Knowledge Discovery, pages 447-454. IEEE.

Mesbahi, M. and Rahmani, A. M. (2016). Load balancing in cloud computing: a state of the art survey. Int. J. Mod. Educ. Comput. Sci, 8(3):64.

Mishra, S. K., Sahoo, B., and Parida, P. P. (2020). Load balancing in cloud computing: a big picture. Journal of King Saud University-Computer and Information Sciences, 32(2):149-158.

Naseer, U., Niccolini, L., Pant, U., Frindell, A., Dasineni, R., and Benson, T. A. (2020). Zero downtime release: Disruption-free load balancing of a multi-billion user website. In ACM SIG on Data Communication on the applications, technologies, architectures, and protocols for computer communication, pages 529-541.

Nielsen, H., Mogul, J., Masinter, L. M., Fielding, R. T., Gettys, J., Leach, P. J., and Berners-Lee, T. (1999). Hypertext Transfer Protocol - HTTP/1.1. RFC 2616.

Patel, P., Bansal, D., Yuan, L., Murthy, A., Greenberg, A., Maltz, D. A., Kern, R., Kumar, H., Zikos, M., Wu, H., et al. (2013). Ananta: Cloud scale load balancing. ACM SIGCOMM Computer Communication Review, 43(4):207-218.

Qian, L., Luo, Z., Du, Y., and Guo, L. (2009). Cloud computing: An overview. In IEEE international conference on cloud computing, pages 626-631. Springer.
Publicado
19/10/2022
FREITAS, Matheus H.; SOUZA, Vitor B.. Statera: Um balanceador de carga rápido e flexível para aplicações HTTP na nuvem. In: SIMPÓSIO EM SISTEMAS COMPUTACIONAIS DE ALTO DESEMPENHO (SSCAD), 23. , 2022, Florianópolis/SC. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2022 . p. 241-252. DOI: https://doi.org/10.5753/wscad.2022.226376.