O estado atual da exibição de um aplicativo PHP 5.x nos servidores da Web Apache, LightTPD e Nginx?

1

Estar preso em uma posição de desenvolvimento / arquitetura de pilha MS durante o último ano e meio evitou que eu permanecesse no topo do mundo da evolução recente do servidor da Web baseado em pilha de software livre mais do que eu gostaria. No entanto, agora estou construindo uma arquitetura de sistema / aplicativo baseada em pilha de código aberto e, infelizmente, não tenho tempo para dar a cada um dos servidores da web mencionados acima um teste completo por mim mesmo para decidir. Então imaginei que receberia informações da comunidade mais conhecida para arquitetura de sistemas.

Este é um site que é um recurso para informações sobre um domínio específico e público-alvo com recursos para ajudar os usuários a encontrarem as informações, mas também a interagirem entre si de várias maneiras, por vários motivos.

Eu escolhi a pilha de código aberto para a riqueza de recursos que ela tem, juntamente com ofertas muito melhores do que a pilha de MS (ou seja, WordPress vs BlogEngine.NET). Eu sinto que o Java está mais no meio dessas pilhas nesse sentido, embora eu não esteja descartando a possibilidade de usá-lo em certas áreas não relacionadas ao próprio aplicativo da web em si, como processos em segundo plano.

Eu já cheguei à conclusão de usar PHP (usando CodeIgniter framework & APC), MySQL (InnoDB) e Memcached no CentOS. Eu definitivamente estou servindo conteúdo estático no Nginx. No entanto, os 3 servidores mencionados não têm consenso sobre qual é o melhor para o conteúdo dinâmico em relação ao desempenho. Parece que o LightTPD ainda tem o problema de vazamento que o elimina se o fizer, o Nginx parece que ainda não está maduro o suficiente para esse aspecto e, claro, o Apache tenta ser tudo para todos.

Eu ainda vou compilar o escolhido com o maior número possível de ajustes de desempenho, como links estáticos e curtidas. Acredito que posso fazer com que o Apache corresponda aos outros 2 no que diz respeito a servir conteúdo dinâmico por meio desse processo e não ter que exibir nada estático. No entanto, durante a minha pesquisa, parece que os outros ainda valem a pena considerar.

Então, com todas as coisas consideradas, eu adoraria ouvir o que todos aqui têm a dizer sobre o assunto. Obrigado!

    
por Gregory Kornblum 12.07.2009 / 05:15

3 respostas

2

Considere isso com alguns grãos de sal, mas minha impressão é que o Apache será um pouco mais fácil de configurar para servir o PHP do que os outros dois servidores. E se você configurar o Apache corretamente, ou seja, não carregar módulos desnecessários, manter o número de processos / threads sob controle, etc., então eu acho que você pode obtê-lo razoavelmente perto em eficiência para nginx ou lighttpd. Eu acho que muitas pessoas têm uma opinião um pouco exagerada sobre a melhoria que pode ser obtida usando lighttpd ou nginx sobre o Apache para páginas geradas dinamicamente.

    
por 12.07.2009 / 06:18
1

Eu pessoalmente acho que o nginx é mais fácil de configurar do que o Apache. Olhando para as configurações do Apache tendem a fazer minha cabeça doer.

No que diz respeito às configurações, minha configuração atual preferida é nginx + php-fpm + APC. Eu tenho vários clientes correndo muito felizes com essa configuração e eles normalmente migraram para fora das configurações baseadas no Apache. Obviamente, YMMV. =)

    
por 12.07.2009 / 08:31
0

Já que você mencionou o CodeIgniter, você pode querer dar uma olhada no Kohana que era originalmente uma bifurcação do CodeIgniter, no entanto, implementou todo o OO no conceito aprimorado OO do php5.Eu não estou dizendo que é melhor, no final é uma questão de preferência pessoal.

    
por 12.07.2009 / 06:13