Velocidade do PHP para outros idiomas

Ouvi dizer muito que o PHP é lento em comparação com outros idiomas. A diferença de velocidade é bastante visível para mudar para outro idioma? E, em caso afirmativo, qual outro idioma você recomendaria? Ou quais seriam algumas boas otimizações que poderiam acelerar o PHP?

    Esta questão surge muito. A resposta é:

    • Sim, é mais lento do que C #, Java, C / C ++, etc.
    • Não, provavelmente não será importante.

    Você pode construir sistemas PHP em grande escala. 4 dos 20 melhores sites visitados são alimentados por PHP (Facebook, Yahoo, Wikipedia, Flickr). O PHP com um cache de código operacional (por exemplo, APC ) pode levá-lo muito mais do que você provavelmente precisa ou se preocupa.

    A maioria dos sites lentos não tem nada a ver com o idioma que eles estão usando. A maior parte do tempo gasto em uma solicitação HTTP se resume à latência da rede, cache ausente ou ineficaz de resources estáticos, falta de compression, resultando em mais largura de banda usada do que o necessário, com pouca performance de Javascript e assim por diante.

    Se você ficar realmente desesperado pelo desempenho, você sempre pode usar o HipHop , que compila PHP para C ++.

    O PHP será bastante rápido o suficiente para aplicações de sites se você usar as melhores práticas.

    Se você compara o PHP, diga C ++, é claro que será mais lento. Mas você precisa considerar o custo total de desenvolvimento. Só porque um idioma produz programas mais rápidos não significa que será mais rentável. Dependendo do seu estilo de programação, experiência e do projeto em que você estiver trabalhando, você pode achar que uma linguagem diferente é mais adequada para a tarefa.

    Se você usa um cache de código aberto , você obterá um ganho de velocidade muito grande, simplesmente removendo a necessidade de acessar o disco e analisando os arquivos PHP.

    Como em qualquer idioma, você precisa estar familiarizado com as estruturas de dados e como eles devem ser usados ​​de forma eficiente. Os algoritmos pobres serão lentos independentemente do idioma, mas especialmente em uma linguagem de script onde muita “magia” acontece sob o capô.

    Para acelerar o PHP, tente o APC – Cache PHP alternativo.

    Ele pode armazenar em cache o código compilado para que os arquivos de código-fonte não precisem ser reparados para cada solicitação.

    Mais informações sobre a APC e outros aceleradores PHP podem ser encontradas na Wikipedia .

    Depende do caso de uso. Bom exemplo para ilustrar isso:

    • Quando você usa o PHP como linguagem de script da web do lado do servidor, será mais rápido do que o programa C / C ++ executado como um CGI (isto é porque para o CGI um processo separado precisa ser criado e alguma configuração deve ser feita, enquanto scripts PHP estão sendo executados dentro do http módulo de servidor e são apenas “pronto para ir”)

    • Por outro lado, quando você usa PHP para computação numérica, será drasticamente mais lento do que o programa escrito em C / C ++

    O PHP é projetado para ser linguagem de programação na Web do lado do servidor e, para esse efeito, deve ser usado. É razoavelmente eficiente para esta tarefa, mas você pode acelerá-la com as ferramentas de cache. Se isso não for suficiente, você pode escrever a extensão na API do Zend.