Apache vs. LightHttp: função echo

Na versão em inglês do meu blog recebi um comentário estes dias que me deixou, “boiando”. No artigo sobre RSS onde eu apenas echoava o conteúdo do RSS usando a função “echo” do PHP. O usuário “BrokenToy” relata que teve alguns problemas utilizando a mesma solução no servidor Lighthttp, pois um “lixo” sempre aparecia no final do arquivo, evitando a validação do XML.

Até ai tudo bem, alguma imcompatibilidade estranha que ainda estou para estudar, mas depois ele relata uma forma diferente de jogar o conteudo na tela, usando “php://output”, e relatando que a função echo tinha diferenças de performance.

Fiquei com uma pulga na orelha e hoje pela manha esbarrei em um post que relata o mesmo. Tobias Schlitt relata um um post que entre o Apache e o Lighthttp existe uma diferença, pequena mas impactante, na performance do comando echo. Aparentemente um echo que demore 0.001 no Lighthttp, pode demorar 0.004 no Apache.

Comparação de Performance (Fonte: Tobias Schlitt)

Tobias relata que a única resposta que lhe pareceu válida sobre o assunto é o fato de o Lighthttp usar a memória compatilhada para transferência de dados, e o Apache “alguma outra coisa”. Bem a tese esta sendo discutida em listas de discussão, quem sabe em breve não teremos uma resposta concreta.

comments powered by Disqus

Related Posts

strtotime() - Pode ajudar?

strtotime() - Pode ajudar?

  • August 3, 2006

Volta e meia recebo emails onde vejo perguntas de “Como somar X dias a uma data?”, “Como descubro quando é a próxima quinta?”, e muitas outras assim. Me assuto ao ver respostas enormes com códigos que fazem de tudo, até calcular dias levando em conta um algoritmo maluco q determina ano bisexto… não entendo porque complicar tanto.

A função strtotime() esta ai para isso, nesse posto vou apresentar ela e mostrar casos simples de uso onde ela é muito eficaz. Além de verificar a performance da função utilizando um benchmark simples.

Read More
Mimicking TravisCI with Jenkins

Mimicking TravisCI with Jenkins

  • February 6, 2013

We are all awaiting the day when all of us can get TravisCI Pro and get all of that testing goodness into our private repositories right? And by that I mean, having our PRs annotated with build status, running automated tests and such.

Read More
Managing Test Users in Facebook

Managing Test Users in Facebook

  • February 7, 2011

Recently Facebook implemented a new and more secure way of creating test users for your applications using the new Graph API. This new resource creates test users per application, allowing the developers of these apps to login as these users and test out their app’s functionality without using their own accounts and throwing test information into their live activity feed, this makes it very easy and clean to test new applications.

Read More