O PHP é executado muito lentamente no IIS7. Precisa de ajuda para otimizar nossa configuração

1

Estou executando um aplicativo da Web baseado em PHP em nosso servidor baseado em nuvem do Windows 2008. O aplicativo, que funciona bem fora do nosso ambiente (por exemplo, um servidor IIS diferente), mas é MUITO lento em nosso ambiente. Baseado em googling esta é uma situação relativamente comum.

Eu instalei o PHP e o MySQL através do método de implementação web do IIS ...

Aqui está nossa configuração:

  • Windows Server 2008 Enterprise SP2 (32 bits)
  • Microsoft-IIS / 7.0
  • Versão do cliente MySQL: mysqlnd 5.0.8-dev - 20102224 $ Revisão: 321634 $
  • extensão PHP: mysqli
  • Atualização para FastCGI do IIS 7.0
  • Windows Cache Extension 1.1 para PHP 5.3

Eu li em outro lugar que o ipv6 pode ser um problema, então eu desativei o adaptador de rede.

O aplicativo está usando: localhost como sua conexão

Seja fácil comigo, já que estou um pouco verde em relação a alguns desses componentes ... Além disso, reescrever o aplicativo PHP ou modificá-lo NÃO é uma opção. Tenho certeza de que nossa configuração é o problema.

    
por Kendor 06.04.2012 / 17:52

3 respostas

2

Eu tive um problema semelhante. Migrou um aplicativo php do iis6 para o iis8 e no iis8 foi muito lento!

Solução: no próprio aplicativo, aponte para 127.0.0.1 como nome do servidor mysql (em vez de localhost). Parece que há problemas de resolução ou problemas de IPv6 relacionados ao uso do nome do host localhost.

127.0.0.1 resolve.

    
por 03.06.2014 / 00:02
1

Há uma boa apresentação sobre PHP no Windows aqui

Este artigo sugere que você obtenha os binários php seguros que não são thread para o Windows. Você já viu isso?

Você usou o instalador da web da Microsoft ou configurou o php et al. você mesmo?

O Wincache também parece ser uma boa ideia: link

    
por 06.04.2012 / 18:14
1

Baseado neste post, Fix: php mysql é MUITO lento , eu determinei que no meu caso o problema é resultado da resolução de nomes do MySQL. Consulte este para obter documentação completa, mas você deve corrigir o problema modificando adicionando o seguinte ao seu my.ini e reiniciando o mysqld.

# Do cache host names.
skip-host-cache

# Do not resolve hostnames. All hostnames are IP's or 'localhost'.
skip-name-resolve

Seus tempos de resposta devem aumentar drasticamente. Infelizmente, você não poderá mais se conectar ao MySQL usando nomes de host e será necessário usar endereços IP.

    
por 13.06.2013 / 23:33

Tags