O Nginx, que se pronuncia “engine-ex”, é um servidor web de código aberto, e, com base no seu sucesso inicial conquistado enquanto servidor web, é agora também usado como proxy reverso, cache HTTP e balanceador de carga.

Algumas empresas de grande reputação que usam o Nginx incluem Autodesk, Atlassian, Intuit, T-Mobile, GitLab, DuckDuckGo, Microsoft, IBM, Google, Adobe, Salesforce, VMWare, Xerox, LinkedIn, Cisco, Facebook, Target, Citrix Systems, Twitter, Apple, Intel e muitos mais (fonte).

O Nginx foi criado originalmente por Igor Sysoev, com seu primeiro lançamento público em outubro de 2004. Igor inicialmente concebeu esse software como uma resposta ao problema C10k, um problema relacionado com a dificuldade de desempenho em lidar com 10.000 conexões simultâneas.

Como as suas raízes estão na otimização de desempenho em escala, o Nginx normalmente supera outros servidores populares da web em testes benchmark, particularmente em situações com conteúdo estático e/ou elevadas solicitações simultâneas, e é por isso que Kinsta usa o Nginx para alimentar sua hospedagem.

Como funciona o Nginx?

O Nginx foi desenhado para facultar uma utilização de pouca memória e uma elevada simultaneidade. Em vez de criar novos processos para cada solicitação web, o Nginx usa uma abordagem assíncrona e orientada para eventos, na qual as solicitações são gerenciadas em um único segmento.

Com o Nginx, um processo master pode controlar vários processos de trabalho. O master mantém os processos de trabalho, enquanto os workers fazem o processamento real. Como o Nginx é assíncrono, cada solicitação pode ser simultaneamente executada pelo worker, sem bloquear outras solicitações.

Algumas caraterísticas comuns encontradas no Nginx:

  • Proxy reverso com armazenamento em cache
  • IPv6
  • Balanceamento de carga
  • Suporte para o FastCGI com cache
  • WebSockets
  • Manipulação de arquivos estáticos, arquivos de índice e indexação automática
  • TLS/SSL com SNI

Na Kinsta, você pode conferir o Nginx e todos os nossos complementos premium.

Estatísticas de utilização NGINX vs Apache

O Apache é outro servidor web de código aberto bem conhecido. Em termos de números, o Apache é o servidor web mais popular, utilizado por 43,6% (abaixo dos 47% em 2018) de todos os sites cujo servidor web é conhecido, segundo a W3Techs. O NGINX vem em um segundo lugar próximo, com 41,8%.

A Netcraft realizou uma pesquisa em 233 milhões de domínios e encontrou o uso do Apache em 31,54% e o uso de Nginx em 26,20%.

Desenvolvedores de servidores Web: participação no mercado de domínios (Fonte de imagem: Netcraft)
Desenvolvedores de servidores Web: participação no mercado de domínios (Fonte de imagem: Netcraft)

Enquanto o Apache é a opção mais popular, o Nginx é, na verdade, o servidor web mais popular entre os sites com tráfego elevado.

Quando você divide as taxas de utilização por tráfego, o Nginx alimenta:

  • 60.9% dos 100.000 sites mais populares (acima de 56,1% em 2018)
  • 67.1% dos 10.000 sites mais populares (acima de 63,2% em 2018)
  • 62.1% dos 1.000 sites mais populares (acima de 57% em 2018)

Na verdade, o Nginx é utilizado por alguns dos sites com recursos mais exigentes e intensivos, incluindo Netflix, NASA e até o WordPress.com.

A utilização do Apache, por outro lado, caminha na direção oposta quando o tráfego de um site aumenta. Ele alimenta:

  • 24.0% dos 100.000 sites mais populares (abaixo de 27,1% em 2018)
  • 18.8% dos 10.000 sites mais populares (abaixo de 21,5% em 2018)
  • 16.6% dos 1.000 sites mais populares (acima de 16,2% em 2018)

Ao ver os termos de pesquisa do Google desde 2004, podemos notar que o Apache está em constante declínio, enquanto o Nginx tem um pequeno crescimento.

Nginx vs Apache
Nginx vs Apache

Novamente, quando se considera que o NGINX apresenta melhor desempenho sob grande escala, não é surpreendente que websites com alto tráfego optem pelo NGINX em vez do Apache. Confira a nossa comparação detalhada entre Nginx vs Apache.

Como verificar se está utilizando o Nginx ou o Apache

Na maioria dos sites, pode simplesmente verificar o cabeçalho HTTP server para ver se ele diz Nginx ou Apache. Você pode ver os cabeçalhos HTTP ao abrir o separador “Rede” no Chrome DevTools. Ou pode verificar cabeçalhos em uma ferramenta como o Pingdom ou o GTmetrix.

Contudo, o cabeçalho HTTP nem sempre revela o servidor web subjacente. Por exemplo, se seu site WordPress estiver por trás de um serviço de proxy, como o Cloudflare, o cabeçalho HTTP server dirá Cloudflare.

Cabeçalho HTTP Nginx
Cabeçalho HTTP Nginx