Pular para o conteúdo principal

Questão de Redes de Computadores — Conceitos Gerais de Servidores Web — INSTITUTO AOCP 2024

Redes de ComputadoresConceitos Gerais de Servidores Web
Código
qa632271
Banca
INSTITUTO AOCP
Órgão
MGI
Ano
2024
Cargo
Esp ( )
A equipe de desenvolvimento de uma empresa está trabalhando em um novo aplicativo web, baseado em Java, para gerenciar o sistema de inventário da empresa. O aplicativo será executado em um ambiente de produção, com alta carga de tráfego, e deverá ser escalável para suportar picos de demanda.   Qual seria a melhor estratégia para configurar o servidor de aplicação para atender a esses requisitos?
  1. AUtilizar uma única instância do servidor Tomcat em uma máquina de alto desempenho.
  2. BConfigurar um cluster de servidores Tomcat para balancear o failover do servidor JBoss.
  3. CImplantar o aplicativo em um único servidor JBoss e aumentar os recursos de hardware conforme necessário.
  4. DConfigurar um cluster de servidores JBoss com balanceamento de carga e failover.
  5. EUtilizar uma combinação de servidores Tomcat e JBoss em um ambiente híbrido.
Revelar gabarito e comentário

GabaritoD — Configurar um cluster de servidores JBoss com balanceamento de carga e failover.

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Servidores de Aplicação: Escalabilidade e Alta Disponibilidade

Gabarito: letra D. Para uma aplicação Java de alta carga e que precisa escalar, a melhor estratégia é configurar um cluster de servidores JBoss com balanceamento de carga e failover — isso distribui as requisições entre múltiplas instâncias (escalabilidade horizontal) e garante que, se uma falhar, outra assume (alta disponibilidade). As demais alternativas ou usam um único servidor (sem escalabilidade nem failover) ou misturam tecnologias de forma inadequada.

O cenário descrito exige dois atributos fundamentais: escalabilidade (capacidade de crescer para suportar picos de demanda) e alta disponibilidade (capacidade de continuar operando mesmo com falhas). Um cluster de servidores de aplicação atende a ambos: o balanceamento de carga distribui as requisições entre os nós do cluster, evitando sobrecarga em um único servidor; o failover garante que, se um nó falhar, as requisições sejam redirecionadas para os demais, sem interrupção do serviço.

O JBoss é um servidor de aplicação Java EE (hoje Jakarta EE) completo, que suporta nativamente a formação de clusters com balanceamento de carga e failover. O Tomcat, por sua vez, é um contêiner de servlets mais leve, mas também pode ser clusterizado. A questão, porém, fala em "aplicativo web baseado em Java" e "servidor de aplicação" — e o JBoss é o servidor de aplicação por excelência nesse contexto.

Na prática, um cluster JBoss pode ser configurado com um balanceador de carga (como Apache HTTP Server com mod_jk, ou um load balancer de hardware) distribuindo as requisições entre os nós. O failover é garantido pela replicação de sessão entre os nós, de modo que, se um nó cair, a sessão do usuário continua disponível em outro.

A pegadinha da banca está em confundir os papéis: a alternativa B fala em "cluster de Tomcat para balancear o failover do JBoss" — o que não faz sentido, pois o Tomcat não balanceia o JBoss; a alternativa E sugere uma combinação híbrida desnecessária. A alternativa D é a única que atende plenamente aos requisitos de escalabilidade e alta disponibilidade com a tecnologia adequada.

NÃO CAIA NESSA!

A banca tenta confundir o candidato misturando os servidores: a alternativa B inverte os papéis (Tomcat balanceando JBoss) e a alternativa E sugere uma combinação híbrida sem necessidade. O candidato deve lembrar que, para uma aplicação Java EE, o JBoss é o servidor de aplicação completo, e o cluster com balanceamento e failover é a solução padrão para alta disponibilidade.

Estratégia p/ alta carga
  • 1Escalabilidade
    • Vertical (1 servidor, + hardware)
      • Teto físico
      • Ponto único de falha
    • Horizontal (cluster)
      • Distribui requisições
      • Crescimento elástico
  • 2Alta disponibilidade
    • Balanceamento de carga
      • Evita sobrecarga
    • Failover
      • Nó falha, outro assume
  • 3Servidor de aplicação
    • JBoss (Java EE completo)
      • Cluster nativo
    • Tomcat (contêiner de servlets)
      • Não balanceia JBoss
LEVEL · soulevel.com.br

Alternativa A — ❌ Incorreta

Utilizar uma única instância do Tomcat em uma máquina de alto desempenho não atende aos requisitos de escalabilidade e alta disponibilidade. Uma única instância representa um ponto único de falha: se o servidor cair, o aplicativo fica indisponível. Além disso, a escalabilidade fica limitada à capacidade da máquina (escalabilidade vertical), que tem teto físico e não resolve picos de demanda de forma elástica.

Alternativa B — ❌ Incorreta

A alternativa inverte os papéis: um cluster de Tomcat não "balanceia o failover" do JBoss. O Tomcat e o JBoss são servidores de aplicação distintos; não faz sentido usar um para balancear o outro. Além disso, a frase "balancear o failover" é tecnicamente incorreta — o balanceamento de carga distribui requisições, e o failover é uma propriedade do cluster. A configuração correta seria um cluster do próprio servidor de aplicação (JBoss) com balanceamento e failover.

Alternativa C — ❌ Incorreta

Implantar em um único servidor JBoss e aumentar os recursos de hardware (escalabilidade vertical) tem limitações: o hardware tem teto físico, e a máquina continua sendo um ponto único de falha. Para alta carga e picos de demanda, a escalabilidade horizontal (adicionar mais servidores ao cluster) é a estratégia recomendada, pois permite crescimento elástico e tolerância a falhas.

Alternativa D — ✅ Correta ⟵ GABARITO

Configurar um cluster de servidores JBoss com balanceamento de carga e failover atende exatamente aos requisitos: o balanceamento de carga distribui as requisições entre os nós, evitando sobrecarga e permitindo escalabilidade horizontal; o failover garante alta disponibilidade, pois se um nó falhar, os demais continuam atendendo. O JBoss é um servidor de aplicação Java EE completo, adequado para aplicações empresariais de alta carga.

Alternativa E — ❌ Incorreta

Utilizar uma combinação de Tomcat e JBoss em um ambiente híbrido é desnecessário e não agrega benefícios claros. Ambos são servidores de aplicação Java; usar os dois simultaneamente para a mesma aplicação complica a arquitetura sem trazer vantagens de escalabilidade ou disponibilidade. A solução correta é um cluster homogêneo do servidor de aplicação escolhido (JBoss), com balanceamento e failover.

Gabarito: letra D

Link permanente: /questoes/qa632271