O Que é NGINX e Como Funciona?
NGINX, pronunciado “engine-ex,” é um famoso software de código aberto para servidores web lançado originalmente para navegação HTTP. Hoje, porém, ele também funciona como proxy reverso, balanceador de carga HTTP, e proxy de email para os protocolos IMAP, POP3, e SMTP.
O NGINX foi lançado em Outubro de 2004. O criador do software, Igor Sysoev, começou o projeto em 2002 como uma resposta ao problema C10k. O C10k é o desafio de gerenciar 10 mil conexões ao mesmo tempo. Hoje em dia há ainda mais conexões que um servidor gerencia. Por este motivo o NGINX oferece uma arquitetura orientada a eventos e assíncrona, o que o torna um dos servidores mais confiáveis em questão de velocidade e escalabilidade.
Devido a sua habilidade de suportar muitas conexões com alta velocidade, muitos sites de alto tráfego tem utilizado o NGINX. Alguns dos gigantes são Google, Netflix, Adobe, Cloudflare, WordPress.com, e muitos outros.
Como o NGINX Funciona?
Agora que sabemos o que é NGINX, vamos aprender como funciona. Mas antes de mergulharmos fundo no NGINX em si precisamos aprender como um servidor web opera. Sempre que um usuário faz uma solicitação de carregamento de página o navegador entra em contato com o servidor do site. Então o servidor busca pelos arquivos solicitados e os entrega ao navegador. Esse é o tipo de solicitação mais simples.
O exemplo acima é considerado uma thread individual. Servidores web tradicionais criam uma thread individual para cada solicitação, mas o NGINX não funciona assim. Como mencionado antes, NGINX performa com uma arquitetura assíncrona e orientada a eventos. Isso significa que threads similares são gerenciadas por um processo worker, e cada processo worker contém unidades menores chamadas conexões worker. Esta unidade inteira então é responsável para cuidar das solicitações de threads. Conexões worker levam as solicitações até um processo worker, que por sua vez as envia para o processo master. Finalmente o processo master fornece o resultado da solicitação.
Isso pode parecer simples, mas uma única conexão worker pode cuidar de até 1024 solicitações similares. Por isso o NGINX consegue atender milhares de solicitações sem dificuldades. Também é o motivo de o NGINX ter se tornado uma excelente opção para websites com muito movimento como e-commerces, mecanismos de busca e armazenamento cloud.
NGINX vs Apache
Dentre os servidores web mais populares o Apache é um dos principais rivais do NGINX. Ele existe desde a década de 90 e possui uma grande comunidade de usuários. Se você está em dúvida sobre qual é o melhor servidor para seu projeto, preparamos um breve informativo comparando o NGINX com o Apache.
- Compatibilidade de SO
Compatibilidade é um dos detalhes que devem ser levados em consideração ao escolher um servidor. Tanto o NGINX quanto Apache conseguem operar em muitos sistemas operacionais que suportam o sistema UNIX. Infelizmente a performance do NGINX no Windows não é tão boa como em outras plataformas. - Suporte ao Usuário
Usuários, desde iniciantes até profissionais, sempre precisam de uma comunidade para ajudar quando um problema surgir. Enquanto que ambos NGINX e Apache possuem suporte via email e um fórum no Stack Overflow, o Apache deixa a desejar no suporte vindo da própria empresa, a Apache Foundation. - Performance
NGINX consegue executar 1000 conexões de conteúdo estático simultaneamente com o dobro de velocidade do Apache utilizando menos memória. Em relação à execução de conteúdos dinâmicos ambos possuem a mesma velocidade. NGINX é uma melhor opção para quem possui um site mais estático.
Dica
Servidores VPS com datacenters no Brasil é na Hostinger. Aproveite para ter um projeto robusto e com recursos de sobra!
Conclusão
NGINX é um servidor web que também funciona como proxy de email, proxy reverso, e balanceador de carga. A estrutura do software é assíncrona e orientada a eventos; possibilitando o processamento de muitas solicitações ao mesmo tempo. O NGINX também é altamente escalável, significando que seu serviço cresce com o aumento de tráfego do usuário. NGINX e Apache são sem dúvidas dois dos melhores servidores web do mercado.
Comentários
April 13 2021
Boa noite! Estou tentando acessar a página da universidade onde trabalho e está aparecendo o seguinte: A página que você está procurando não foi encontrada. Administrador do site. Algo acionou a falta de uma página da web em seu site. Esta é a página de erro 404 padrão para nginx que é distribuída com o Fedora. Ele está localizado /usr/share/nginx/html/404.html. Você deve personalizar esta página de erro para seu próprio site ou editar a diretiva error_page no arquivo de configuração nginx /etc/nginx/nginx.conf. O que posso fazer para resolver o problema. Eu uso o linux ubuntu. Rosivalda
April 16 2021
Olá, Rosivalda! Nesse caso, o ideal seria conversar com o setor de TI da sua Universidade, já que parece ser um problema do lado do servidor deles mesmo.