existe um motivo para instalar um servidor da Web diferente do Apache, como lighttp ou nginx?

1

Eu freqüentemente instalo um apache no meu PC local para testar arquivos ou experimentar hospedagem no meu PC. O servidor que eu usei é geralmente o Apache. Existe algum motivo para experimentar outros como lighttp ou nginx?

    
por 太極者無極而生 28.05.2009 / 06:20

5 respostas

4

Para a grande maioria das pessoas, o Apache fornece desempenho, recursos e flexibilidade mais que suficientes. Basta passar uma noite ou duas lendo a Documentação do Apache Para ter uma noção da riqueza de recursos.

Eu tenho um colega que trabalhou no shopping.com que disse que eles construíram uma empresa inteira em mod_rewrite

Existem alguns casos em que servidores web alternativos fazem sentido - normalmente em ambientes de hospedagem de desempenho ultra-alto e em larga escala e, inversamente, em situações em que você pode estar limitado à memória (como um VPS de slicehost / linode)

Vantagens dos vários servidores da Web alternativos:

  • lighttpd - bem conhecido por conseguir atender a um grande número de conexões (até 10.000)   
  • nginx - funciona bem na configuração de memória limitada.

    Em geral, se o Apache não estiver causando nenhuma dificuldade, você terá todos os recursos e funcionalidades de que precisa. Por outro lado, se você está tentando extrair alguns milhares de conexões simultâneas de um VPS de 256 MB - você pode querer considerar o check-out do nginx.     
  • por 28.05.2009 / 06:46
    2

    Depende do tipo de site, carga, tipo de conteúdo, etc. nginx e lighttpd têm alto desempenho e pouca memória / CPU. Em geral, se o seu site serve apenas conteúdo estático (imagens, mídia, etc., sem páginas dinâmicas como php) e tem muitas conexões simultâneas - nginx ou lighttpd podem ser uma escolha melhor. O apache é um servidor web versátil, mas mais pesado, altamente configurável e você pode servir qualquer tipo de conteúdo com ele.

    Uma aplicação interessante e extremamente útil do nginx / lighttpd é o proxy de um servidor apache atrás deles. Neste caso o nginx (ou lighty) aceita conexões de usuários e também serve conteúdo estático diretamente para eles, mas envia consultas para páginas dinâmicas (php, cgi etc) para o apache. Assim, o apache processa somente páginas dinâmicas e as envia de volta ao proxy (nginx, lighty), que por sua vez simplesmente as serve aos usuários. Este esquema é muito eficaz em sites de alta carga.

    Mas, em geral, eu concordo com ghs0 - na maioria dos casos, "você tem todos os recursos e funcionalidades de que precisa" com o apache.

        
    por 28.05.2009 / 10:09
    1

    Eu tenho um servidor virtual com 256M de RAM. Para hospedar meu aplicativo PHP e economizar em RAM, decidi usar lighttpd / PHP-fcgi em vez de Apache / mod_php . Na minha configuração atual eu tenho 6 processos PHP (sweet-spot para 4 core CPU) manipulando a requisição que um único processo lighttpd despacha para eles. Assim, o uso da memória sempre fica estável, não importa quantos usuários acessem o site. Embora eu não fizesse testes de carga, não me surpreenderia se essa configuração pudesse lidar com um slashdotting. Como bônus, havia alguma RAM sobrando para o memcached.

    O Lighttpd é bastante completo. Ele inicia os processos do fcgi na inicialização, fecha-os no desligamento (o que o ngingx não faz), mod_rewrite e muitas outras coisas boas. Além disso, o arquivo de configuração é muito mais poderoso que o do Apache.

    Concedido, dado tempo suficiente, acho que você poderia configurar o Apache para algo assim também, mas eu acho que não seria divertido e provavelmente usaria mais memória RAM.

        
    por 28.05.2009 / 10:31
    1

    Fiquei muito, muito satisfeito com lighttpd / fast-cgi no meu antigo servidor web, que era um Pentium II a 500Mhz com 192MB de RAM. Com o apache eu era rotineiramente de 200MB no arquivo de troca, enquanto o lighttpd / fast-cgi quase nunca forçava o sistema a tocar na troca.

    Se você tem a RAM e o poder de processamento para lidar com o Apache, e já tem experiência com isso, não, duvido que exista alguma necessidade urgente de mudar. Se você está procurando por algo mais leve que seja parecido com o Apache e cubra uma boa variedade de aplicativos de webserving (embora não seja exatamente a pletora que o Apache possui), o lighttpd com fast-cgi é uma excelente opção para investigar.

        
    por 28.05.2009 / 15:23
    1
    A configuração de

    lighttpd é bastante agradável e direta, por exemplo não há mágica em torno de VirtualHost , você acabou de escrever if que testa HTTP_HOST header e coloca regras nela.

    lighttpd tem mod_rewrite , que é um pouco menos poderoso que o do Apache, mas muito mais fácil de usar (reescreve apenas uma vez).

    Quando a reescrita básica não é cortada, o lighttpd tem mod_magnet , o que permite escrever reescritas em Lua. Demorei menos tempo para aprender Lua do que para depurar o problema médio de mod_rewrite no Apache:)

    lighttpd também tem mod-trigger-b4-dl e X-lighttd-sendfile , ambos permitem implementar facilmente o acesso a arquivos com mecanismo de autenticação personalizado (por exemplo, script PHP que protege a coleta de documentos, com o lighttpd manipulando eficientemente o envio dos arquivos).

    Apache + mod_php tem um problema incômodo com gettext , que armazena em cache .mo arquivos até que o servidor seja reiniciado. Eu não tenho esse problema com lighttpd .

        
    por 31.05.2009 / 02:28

    Tags