it-swarm-pt.tech

Qual é mais rápido, python páginas da web ou páginas da web em php?

Qual é mais rápido, python páginas da web ou páginas da web em php?

Alguém sabe como a velocidade dos postes (ou qualquer outra estrutura) se compara a um site semelhante feito com php?

Eu sei que servir uma página base python base via cgi é mais lento que php por causa de sua longa inicialização todas as vezes.

Eu gosto de usar postes e ainda o usaria se fosse mais lento que o php. Mas se os postes fossem mais rápidos que o php, talvez eu pudesse, eventualmente, convencer meu empregador a permitir que eu convertesse o site em postes.

39
Echo

Parece que você não deseja comparar os dois idiomas , mas que deseja comparar dois sistemas da web .

Isso é complicado, porque há muitas variáveis ​​envolvidas.

Por exemplo, os aplicativos da web Python podem tirar proveito de mod_wsgi para conversar com servidores da web, o que é mais rápido do que qualquer uma das formas típicas que PHP conversa com os servidores da web (mesmo mod_php acaba sendo mais lento se você estiver usando o Apache, porque o Apache só pode usar o Prefork MPM com mod_php em vez de MPM com vários threads, como Worker).

Há também o problema da compilação de código. Como você sabe, Python é compilado just-in-time para codificar bytes (arquivos .pyc) quando um arquivo é executado cada vez que ele é alterado. Portanto, após a primeira execução de um arquivo Python, a etapa de compilação é ignorada e o interpretador Python simplesmente busca o arquivo .pyc pré-compilado. Por causa disso, pode-se argumentar que o Python possui uma vantagem nativa sobre o PHP. No entanto, otimizadores e sistemas de armazenamento em cache podem ser instalados em sites PHP (o meu favorito é eAccelerator ) com o mesmo efeito.

Em geral, existem ferramentas suficientes para que um possa praticamente fazer tudo o que o outro pode fazer. Obviamente, como outros já mencionaram, há mais do que apenas velocidade envolvida no business case para alternar idiomas. Temos um aplicativo escrito em oCaml no meu atual empregador, que acabou sendo um erro porque o autor original deixou a empresa e ninguém mais quer tocá-lo. Da mesma forma, a comunidade PHP-web é muito maior que a comunidade Python-web; É mais provável que os serviços de hospedagem de sites ofereçam suporte ao PHP do que ao suporte ao Python; etc.

Mas voltando à velocidade. Você deve reconhecer que a questão da velocidade aqui envolve muitas partes móveis. Felizmente, muitas dessas partes podem ser otimizadas de forma independente, proporcionando vários caminhos para buscar ganhos de desempenho.

88
Ross

Não faz sentido tentar convencer seu empregador a mudar de PHP para Python, especialmente não para um sistema existente, que é o que eu acho que você sugeriu na sua pergunta).

A razão para isso é que você já possui um sistema de trabalho (presumivelmente), com um investimento existente de tempo e esforço (e experiência). Descartar isso em favor de um ganho trivial de desempenho (não que eu esteja afirmando que haveria um) seria tolo, e nenhum gerente que se preze deveria apoiá-lo.

Também pode criar um problema de manutenção, dependendo de quem mais precisa trabalhar com o sistema e de sua experiência com o Python.

29
Rob

Eu assumiria que o PHP (> 5.5)) é mais rápido e mais confiável para aplicativos Web complexos porque é otimizado para scripts de sites.

Muitos dos benchmarks que você encontrará na rede são feitos apenas para provar que o idioma preferido é melhor. Mas você não pode comparar 2 idiomas com uma tarefa matemática executando X-times. Para uma referência real, você precisa de duas estruturas comparáveis ​​com centenas de classes/arquivos e um aplicativo Web executando 100 clientes de uma só vez.

7
RubbelDeCatc

É sobre o mesmo. A diferença não deve ser grande o suficiente para ser o motivo para escolher um ou outro. Não tente compará-los escrevendo seus próprios pequenos benchmarks ("hello world") porque você provavelmente não terá resultados representativos de um site real, gerando uma página mais complexa.

2
indentation

PHP e Python são semelhantes o suficiente para não garantir nenhum tipo de comutação.

Qualquer melhoria de desempenho que você possa obter ao mudar de um idioma para outro seria muito mais fácil simplesmente não gastando dinheiro com a conversão do código (você não codifica de graça, certo?) E apenas comprando mais hardware.

2
SCdF

Se não está quebrado, não conserte.

Basta escrever um teste rápido, mas lembre-se de que cada idioma será mais rápido com determinadas funções que o outro.

1
UnkwnTech

uma organização IS não ponderaria isso, a menos que a disponibilidade estivesse se tornando um problema.

nesse caso, procure replicação, balanceamento de carga e muita memória RAM.

1
sara palin

Você precisa fazer um argumento comercial para mudar, não apenas que "é mais rápido". Se um site desenvolvido com a tecnologia B custar 20% mais em tempo de manutenção do desenvolvedor por um período determinado (por exemplo, 3 anos), provavelmente seria mais barato adicionar outro servidor da web ao sistema que executa a tecnologia A para preencher a lacuna de desempenho.

Apenas dizendo "devemos mudar para a tecnologia B porque a tecnologia B é mais rápida!" realmente não funciona.

Como o Python é muito menos onipresente que o PHP, eu não ficaria surpreso se a hospedagem, o desenvolvedor e outros custos de manutenção (a longo prazo) fossem adequados para esse cenário).

1
Peter Bailey

A única resposta certa é "Depende". Há muitas variáveis ​​que podem afetar o desempenho, e você pode otimizar muitas coisas em qualquer situação.

0
Aeon