Resumo: |
Um dos principais desafios enfrentados no desenvolvimento de aplicações com alta demanda de recursos computacionais pode ser resolvido por meio da utilização de sistemas computacionais distribuídos. Nestes sistemas, é possível dividir o esforço computacional entre diversas máquinas interconectadas e, dessa forma, realizar o processamento de algoritmos que não teriam viabilidade quando executados em máquinas individuais. Seguindo este mesmo paradigma, tem-se atualmente no desenvolvimento de aplicações para o ambiente web os mesmos desafios, visto que, além da complexidade das tarefas executadas por uma aplicação, o acesso à mesma costuma a ser realizado por diversos usuários simultaneamente, gerando uma carga de trabalho ainda maior para um único servidor. Sendo assim, esta pesquisa se dispôs a analisar dois modelos distintos de implementação de um cluster para o processamento de um aplicativo web: um deles utilizando um modelo tradicional, através da simples clusterização de um servidor de aplicação Glassfish; e o outro utilizando dos recursos de um framework para a construção de aplicações distribuídas denominado Java Parallel Processing Framework (JPPF). Ambos os modelos foram analisados com base em métricas de performance e fatores gerenciais e experimentados em diversas configurações distintas, levando-se em consideração o número de usuários, número de nós no cluster e carga de trabalho executada. Com base nos resultados atingidos, observou-se as principais vantagens e desvantagens dos modelos propostos, constatando-se a aplicabilidade dos mesmos e conferindo a importância da utilização de métodos de implementação paralela e distribuída no desenvolvimento de aplicações web. |