Pular para o conteúdo principal

Questão de Sistemas Operacionais — Apache — INSTITUTO AOCP 2023

Sistemas OperacionaisApache
Código
qq971029
Banca
INSTITUTO AOCP
Órgão
IF-MA
Ano
2023
Nível
Superior
Cargo
Analista De Tecnologia Da Informação - Infraestrutura
Ao configurar o servidor Apache em um ambiente de alto desempenho, qual é a técnica eficaz para otimizar o uso de recursos e melhorar a capacidade de atendimento das solicitações dos clientes?
  1. ADesabilitar o registro de erros e acesso para reduzir a sobrecarga de I/O.
  2. BUtilizar um único arquivo de configuração global para todos os sites hospedados no servidor.
  3. CConfigurar o MPM (Multi-Processing Module) apropriadamente para ajustar o gerenciamento de conexões e recursos.
  4. DUtilizar somente módulos padrão do Apache, evitando módulos de terceiros para manter a simplicidade.
  5. EConfigurar o Apache para utilizar o mínimo possível de memória, mesmo que isso resulte em maior uso de CPU.
Revelar gabarito e comentário

GabaritoC — Configurar o MPM (Multi-Processing Module) apropriadamente para ajustar o gerenciamento de conexões e recursos.

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”.

Otimização do Apache: o papel do MPM

Gabarito: letra C. A técnica eficaz para otimizar o uso de recursos e melhorar a capacidade de atendimento em um servidor Apache de alto desempenho é configurar adequadamente o MPM (Multi-Processing Module), pois é ele quem define o modelo de gerenciamento de processos/threads e, consequentemente, o consumo de memória e a capacidade de lidar com conexões simultâneas. As demais alternativas apresentam práticas que, em vez de otimizar, degradam o desempenho ou a segurança do servidor.

O Apache HTTP Server é um servidor web modular e multiplataforma, cujo funcionamento é controlado por diretivas em arquivos de configuração como o httpd.conf. Para atender requisições HTTP, o Apache precisa criar processos ou threads que ficam aguardando e processando as conexões dos clientes. A forma como esses processos/threads são criados, gerenciados e reciclados é definida pelo MPM (Multi-Processing Module). Existem diferentes MPMs, como o prefork (um processo por conexão, mais estável, porém consome mais memória) e o worker (processos com múltiplas threads, mais leve e escalável). A escolha e o ajuste do MPM — por meio de diretivas como StartServers, MinSpareServers, MaxSpareServers, MaxRequestWorkers e MaxConnectionsPerChild — permitem equilibrar o uso de CPU e memória, aumentando a capacidade de atendimento sem sobrecarregar o sistema.

A otimização de um servidor web não se resume a uma única configuração, mas a um conjunto de boas práticas. O MPM é o coração desse processo, pois define a arquitetura de concorrência. Por exemplo, em um servidor com muita memória RAM, o prefork pode ser adequado; já em um cenário com muitas conexões simultâneas e recursos limitados, o worker ou o event (disponível em versões mais recentes) são mais eficientes. Ajustar o MPM corretamente é, portanto, a técnica mais direta e eficaz para otimizar recursos e melhorar o atendimento, pois impacta diretamente na forma como o servidor lida com as requisições.

As alternativas incorretas propõem soluções que, na prática, são prejudiciais ou insuficientes. Desabilitar logs reduz a capacidade de diagnóstico e auditoria, essenciais para identificar problemas de desempenho e segurança. Usar um único arquivo de configuração global para todos os sites dificulta a administração e o isolamento de configurações, podendo causar conflitos. Evitar módulos de terceiros pode até simplificar, mas não é uma técnica de otimização de recursos — muitos módulos são justamente utilizados para melhorar o desempenho (como cache e compressão). Por fim, configurar o Apache para usar o mínimo de memória possível, mesmo que aumente o uso de CPU, é uma troca inadequada, pois o objetivo é o equilíbrio entre os recursos, não a minimização de um em detrimento de outro.

A pegadinha desta questão está em confundir "otimização de recursos" com "redução de funcionalidades" ou "simplificação". O candidato pode ser tentado a escolher a alternativa A (desabilitar logs) ou D (usar apenas módulos padrão), pensando que menos funcionalidades significam mais desempenho. No entanto, a otimização real passa pelo gerenciamento inteligente dos recursos, que é exatamente o papel do MPM. Guarde essa distinção: otimizar não é amputar, é configurar adequadamente o que já existe para extrair o máximo de desempenho com o mínimo de desperdício.

Otimização do Apache
  • 1Técnica eficaz
    • Configurar MPM
      • prefork (1 processo por conexão)
      • worker (processos com threads)
      • event (alta concorrência)
      • Diretivas: MaxRequestWorkers, StartServers
  • 2Práticas prejudiciais
    • Desabilitar logs (perde diagnóstico)
    • Arquivo único global (dificulta gestão)
    • Evitar módulos de terceiros (não otimiza)
    • Mínimo de memória (desequilibra CPU)
LEVEL · soulevel.com.br

Alternativa A — ❌ Incorreta

Desabilitar o registro de erros e acesso (ErrorLog e CustomLog) reduz a sobrecarga de I/O, mas elimina informações cruciais para monitoramento, auditoria e diagnóstico de falhas. Em um ambiente de alto desempenho, os logs são essenciais para identificar gargalos, ataques e erros de configuração. A prática correta é gerenciar os logs de forma eficiente (por exemplo, com rotação e armazenamento em disco separado), não desabilitá-los. A otimização não pode sacrificar a visibilidade e a segurança do servidor.

Alternativa B — ❌ Incorreta

Utilizar um único arquivo de configuração global para todos os sites (httpd.conf) é uma prática que dificulta a administração, especialmente em servidores com múltiplos virtual hosts. A configuração adequada utiliza diretivas como <VirtualHost> para separar as configurações de cada site, permitindo ajustes específicos de desempenho, segurança e recursos. Um arquivo único e monolítico torna o gerenciamento confuso e propenso a erros, não sendo uma técnica de otimização.

Alternativa C — ✅ Correta ⟵ GABARITO

O MPM (Multi-Processing Module) é o componente do Apache que define como o servidor gerencia processos e threads para atender requisições. Configurá-lo apropriadamente — escolhendo o MPM adequado (prefork, worker, event) e ajustando diretivas como MaxRequestWorkers, StartServers, MinSpareServers e MaxSpareServers — permite otimizar o uso de memória e CPU, aumentando a capacidade de atendimento de solicitações simultâneas. Essa é a técnica central para ajustar o gerenciamento de conexões e recursos em um ambiente de alto desempenho.

Alternativa D — ❌ Incorreta

Utilizar somente módulos padrão do Apache, evitando módulos de terceiros, não é uma técnica de otimização de recursos. Muitos módulos de terceiros (ou até mesmo oficiais, como mod_cache, mod_deflate, mod_proxy) são justamente utilizados para melhorar o desempenho, reduzindo a carga no servidor e acelerando a entrega de conteúdo. A simplicidade pode ser desejável em alguns cenários, mas não é, por si só, uma estratégia de otimização de recursos e capacidade de atendimento.

Alternativa E — ❌ Incorreta

Configurar o Apache para utilizar o mínimo possível de memória, mesmo que isso resulte em maior uso de CPU, é uma abordagem equivocada. A otimização busca o equilíbrio entre os recursos disponíveis, não a minimização de um em detrimento de outro. Forçar o uso mínimo de memória pode levar a um aumento excessivo de trocas de contexto e uso de CPU, degradando o desempenho geral. O objetivo é configurar o servidor para utilizar os recursos de forma eficiente, o que é feito por meio do MPM e de outras diretivas de ajuste fino.

NÃO CAIA NESSA!

A banca tenta induzir o candidato a confundir "otimização" com "redução de funcionalidades" ou "simplificação". As alternativas A e D parecem atraentes porque sugerem "menos trabalho" para o servidor, mas a otimização real passa pelo gerenciamento inteligente dos recursos, que é exatamente o papel do MPM. Lembre-se: otimizar não é amputar, é configurar adequadamente para extrair o máximo de desempenho com o mínimo de desperdício.

NÃO CAIA NESSA!

Para questões sobre otimização de servidores web, foque no que gerencia recursos (MPM, cache, compressão, balanceamento de carga) e desconfie de alternativas que propõem desabilitar ou reduzir funcionalidades essenciais (logs, módulos). A banca adora trocar a solução técnica correta por uma "solução simplista" que parece lógica, mas é prejudicial na prática.

Gabarito: letra C

Link permanente: /questoes/qq971029