BIA - IFPI Campus Teresina Central Tecnologia Analise e Desenvolvimento de Sistemas - Teresina Central
Use este identificador para citar ou linkar para este item: https://bia.ifpi.edu.br/jspui/handle/123456789/5654
Tipo: Trabalho de Conclusão de Curso
Título: Escalabilidade em sistemas web: uma análise comparativa entre Java e Rust em arquitetura monolítica
Autor: Santos, Luis Henrique de Moura
Orientador(a): Sousa, Aislan Rafael Rodrigues de
Resumo: A expansão das aplicações web intensificou a busca por escalabilidade, e a arquitetura monolítica permanece como ponto de partida para muitos sistemas. Diante do aumento da carga, presume-se que a migração para arquiteturas distribuídas seja inevitável, ignorando-se uma variável anterior: o ecossistema de execução da linguagem, que compreende o modelo de gerenciamento de memória, o framework e o modelo de concorrência. Este trabalho compara duas implementações funcionalmente equivalentes de um serviço de encurtamento de endereços web, uma em Java com Spring Boot e servidor embarcado Tomcat, e outra em Rust com Actix-web sobre runtime assíncrono Tokio, submetidas a cargas progressivas de até 1.500 requisições por segundo em containers limitados a meio núcleo de processamento e 512 megabytes de memória. Três algoritmos de coleta de lixo da máquina virtual Java foram avaliados como variável independente. Os resultados mostram que a implementação em Rust manteve latência mediana estável entre 260 e 272 microssegundos com consumo fixo de 7 megabytes, enquanto a configuração Java padrão registrou picos de latência no percentil 95 de até 196 milissegundos e consumo de aproximadamente 420 megabytes. O coletor concorrente de última geração, projetado para latência mínima, falhou nos critérios de aceitação nas três execuções devido à contenção por processamento fracionado. O coletor sequencial, o mais simples disponível, superou as demais configurações Java em latência, variância e consumo de memória. No cenário investigado, a escolha do ecossistema de execução e do algoritmo de coleta mostrou-se fator determinante nos limites de desempenho do monólito antes de migração arquitetural.
Abstract: The expansion of web applications has intensified the pursuit of scalability, and monolithic architecture remains the starting point for many systems. As load increases, migration toward distributed architectures is often assumed to be inevitable, overlooking an earlier variable: the execution ecosystem of the language, encompassing its memory management model, framework, and concurrency model. This work compares two functionally equivalent implementations of a web address shortening service, one in Java with Spring Boot and embedded Tomcat server, and another in Rust with Actix-web on the asynchronous Tokio runtime, subjected to progressive loads of up to 1,500 requests per second in containers limited to half a processing core and 512 megabytes of memory. Three garbage collection algorithms of the Java virtual machine were evaluated as an independent variable. Results show that the Rust implementation maintained a stable median latency between 260 and 272 microseconds with a fixed footprint of 7 megabytes, while the default Java configuration exhibited 95th-percentile latency peaks of up to 196 milliseconds and approximately 420 megabytes of memory consumption. The latest-generation concurrent collector, designed for minimal latency, failed the acceptance thresholds in all three runs due to contention over the fractional processing capacity. The sequential collector, the simplest available, outperformed the other Java configurations in latency, variance, and memory consumption. Within the investigated scenario, the choice of execution ecosystem and collection algorithm proved to be a determining factor in the performance limits of the monolith before architectural migration.
Palavras-chave: Escalabilidade
Arquitetura monolítica
Gerenciamento de memória
Coleta de lixo
Desempenho sob carga
Cnpq: CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAO::ARQUITETURA DE SISTEMAS DE COMPUTACAO
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO::LINGUAGENS DE PROGRAMACAO
metadata.dc.language: por
País: Brasil
Editor: Instituto Federal de Educação, Ciência e Tecnologia do Piauí
Sigla: IFPI
Unidade: Campus Teresina Central
Citação: SANTOS, Luis Henrique de Moura. Escalabilidade em sistemas web: uma análise comparativa entre Java e Rust em arquitetura monolítica. Orientador: Aislan Rafael Rodrigues de Sousa. 2026. 14 f. Trabalho de Conclusão de Curso (Tecnologia em Análise e Desenvolvimento de Sistemas) - Instituto Federal do Piauí, Campus Teresina Central, Teresina, 2026
Tipo de acesso: Acesso Aberto
URI: https://bia.ifpi.edu.br/jspui/handle/123456789/5654
Data do documento: 2026
Aparece nas coleções:Analise e Desenvolvimento de Sistemas - Teresina Central

Arquivos associados a este item:
Arquivo Descrição TamanhoFormato 
2026_tcc_lhsantos.pdf162.76 kBAdobe PDFVisualizar/Abrir


Os itens no repositório estão protegidos por copyright, com todos os direitos reservados, salvo quando é indicado o contrário.