Facebook cria uma máquina virtual para PHP
A “HipHop Virtual Machine” é capaz de executar código em PHP até nove vezes mais rápido que o interpretador nativo da linguagem.
O Facebook tomou mais uma iniciativa para tornar a execução de código PHP↳PHP44 conteúdosPadronizando seu código com PHP CS FixerDev (Back & Front) · mai 2019Docker de imagem. Para rodar projetos PHP em menos de 30 segundosDev (Back & Front) · jan 2026PHP 7.3: conheça as novidades desta versãoDev (Back & Front) · abr 2019Ver tudo em Dev (Back & Front) → mais rápida: desenvolveu uma máquina virtual que afirma ser capaz de executar programas nessa linguagem até nove mais rápido que utilizando o interpretador nativo em sistemas de grande porte.
A empresa vem usando a máquina virtual, apelidada de HipHop Virtual Machine (HHVM), em todos os seus servidores desde o início deste ano.
De acordo com Joel Pobar, um gerente de engenharia do Facebook, que falou sobre a tecnologia durante a Open Source Conference (OSCON), evento organizado pela editora O’Reilly que acontece nesta semana em Portland, no Oregon, o objetivo é fazer o PHP rodar muito rápido.
Esta não é a primeira vez que o Facebook tenha otimizar o PHP para execução mais rápida. A linguagem é interpretada, e cada instrução em um programa tem que ser analisada e convertida em linguagem de máquina para só então ser processada, a cada vez que o programa é executado. Em termos gerais, programas escritos em linguagens interpretadas tendem a rodar mais lentamente que os escritos em linguagens como C ou C++, que são compilados apenas uma vez para linguagem de máquina. O Facebook se mantém leal ao PHP porque é uma linguagem com a qual os programadores que trabalham para a empresa estão amplamente familiarizados.
Para acompanhar a crescente demanda dos usuários, o Facebook originalmente projetou um compilador, chamado HipHop, capaz de traduzir código PHP em C++, para que pudesse ser compilado e executado com maior desempenho. Apesar de ter conseguido consideráveis ganhos de desempenho com a primeira versão do HipHop por vários anos, a empresa procurou outras formas de acelerar a entrega a cerca de um bilhão de usuários de páginas criadas dinamicamente. “Os ganhos de desempenho nessa estratégia estavam se esgotando”, admitiu Pobar.
Assim, a HHVM é o próximo passo para o Facebook nesse sentido. Em desenvolvimento há cerca de três anos, ela funciona com os mesmos princípios de uma máquina virtual Java (JVM) e possui um compilador em tempo de execução (JIT) que converte o código fonte em PHP em linguagem de máquina à medida em que é necessário. A versão antiga do HipHop, renomeada como HPHPc, foi aposentada pelo Facebook.
Com a nova abordagem, a máquina virtual pode tomar decisões mais inteligentes em tempo de execução, segundo Pobar. Por exemplo, se uma chamada a um banco de dados↳Banco de dados134 conteúdosSQL ou NoSQL: eis a questão!!Data · mar 2020Banco de dados: como organizar e dar segurança para milhões de dados de loteriasData · mai 20215 serviços gratuitos na cloud para bancos de dados PostgresData · fev 2025Ver tudo em Data → é feita para ler uma linha de dados, a HHVM pode determinar, em tempo real, qual tipo de dado está sendo acessado, como números inteiros ou strings (conjuntos de caracteres), e gerar dinamicamente código que é mais adequado para lidar com esse tipo de dados em específico.
De acordo com Pobar, a HHVM é cerca de duas vezes mais rápida que a HPHPc e nove vezes mais rápida que o interpretador PHP original.
O Facebook colocou o código fonte da HHVM no GitHub, na esperança de que outros o usem para acelerar seus próprios sites. A novidade é otimizada para lidar com bases de código PHP muito grandes e intensamente utilizadas. Pobar admite que usar a HHVM em um site comum, como um que hospeda um blog em WordPress, produzirá um ganho de desempenho de “apenas” cinco vezes em relação ao interpretador original. “Há casos em que o tempo de execução no processador pode não ser o fator limitante no desempenho de um código em PHP. Pode ser que o sistema esteja gastando tempo demais conversando com o banco de dados, ou o cache de memória”, afirmou Pobar.
Com informações de Computerworld
Dirty Frag: a nova falha que coloca o kernel Linux contra o relógio
Poucos dias depois do barulho causado pelo Copy Fail, o ecossistema Linux voltou a entrar em modo de alerta. Dessa vez, o protagonista é o Dirty Frag.






Redação iMasters


