HHVM - ENTRE NESSE RITMO
SOBRE MIM
DEVELOPER POR AMOR HA MAIS DE 5 ANOS
ZEND CERTIFIED ENGINEER DESDE 2013
APAIXONADO POR TECNOLOGIA
HHVM - O QUE EH ?
HHVM - HIP HOP VIRTUAL MACHINE
ESCRITA PELO FACEBOOK
DESENVOLVIDA EM C++, PHP E OCALM
POSSUI UMA LINGUAG...
UM POUCO DE HISTORIA!!
2008 - HPHPc , HPHPi, HPHPd
2010 - HHVM - Suporte a PHP 5.4
2013 - HPHPc DEPRECIADO
COMPATIBILIDADE
UNIX BASED OS 

(SE VOCE PREFERE WINDOWS, USE O VAGRANT)
NGINX e APACHE
PHP 5.4
LIBRARIES: COMPOSER, DOCTR...
COMO A HHVM
FUNCIONA ?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
???
?
?
?
?
?
CONTEXTUALIZANDO…
HIP HOP BYTECODE
MACHINE CODE
JUST IN TIME COMPILER (JIT)
ABSTRACT SYNTAX TREE (AST)
PHP AST HHBC
MACHINE
CODE
JIT
HACK AST HHBC
MACHINE
CODE
JIT
ALGUNS GRAFICOS QUE
IRÃO TE CONVENCER
REQUISIÇÕES POR MINUTO
(REQUISIÇÕES DE RÁPIDA RESPOSTA)
REQUISIÇÕES POR MINUTO
(REQU...
NÃO SURPREENDIDO?
TEMPO DE RESPOSTA EM MS
(REQUISIÇÃO DE RÁPIDA RESPOSTA)
TEMPO DE RESPOSTA EM MS
(REQUISIÇÃO DE LONGA DUR...
INSTALAÇÃO - DEBIAN BASED
deb http://dl.hhvm.com/ubuntu saucy main !
apt-get update!
apt-get install hhvm!
/etc/init.d/hhv...
INTALAÇÃO - Mac OS X
brew tap homebrew/dupes !
brew tap homebrew/versions!
brew tap mcuadros/homebrew-hhvm!
brew install h...
INSTALAÇÃO - WINDOWS
MAS AINDA FALTA UMA
COISA…
HACK
MODOS
STRICT “<?hh /strict ”
PARTIAL “<?hh /partial” - DEFAULT
TYPE ANNOTATIONS
GENERICS
COLLECTIONS
GENERATORS
CLOSURES
ASYNC
OBRIGADO!
contato@leviferreira.com
@leviferreira - github
HHVM - Entre Nesse Ritmo - TDC Florianopolis 2014
Próximos SlideShares
Carregando em…5
×

HHVM - Entre Nesse Ritmo - TDC Florianopolis 2014

1.402 visualizações

Publicada em

Palestra ministrada durante a TDC 2014 de Florianopolis - Trilha PHP

Publicada em: Tecnologia
0 comentários
4 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
1.402
No SlideShare
0
A partir de incorporações
0
Número de incorporações
54
Ações
Compartilhamentos
0
Downloads
7
Comentários
0
Gostaram
4
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

HHVM - Entre Nesse Ritmo - TDC Florianopolis 2014

  1. 1. HHVM - ENTRE NESSE RITMO
  2. 2. SOBRE MIM DEVELOPER POR AMOR HA MAIS DE 5 ANOS ZEND CERTIFIED ENGINEER DESDE 2013 APAIXONADO POR TECNOLOGIA
  3. 3. HHVM - O QUE EH ? HHVM - HIP HOP VIRTUAL MACHINE ESCRITA PELO FACEBOOK DESENVOLVIDA EM C++, PHP E OCALM POSSUI UMA LINGUAGEM OPICIONAL CHAMADA “HACK” OBJETIVO: SER MUITO MAIS RAPIDA QUE O “ZEND” PHP E SER COMPATIVEL COM ELE
  4. 4. UM POUCO DE HISTORIA!! 2008 - HPHPc , HPHPi, HPHPd 2010 - HHVM - Suporte a PHP 5.4 2013 - HPHPc DEPRECIADO
  5. 5. COMPATIBILIDADE UNIX BASED OS 
 (SE VOCE PREFERE WINDOWS, USE O VAGRANT) NGINX e APACHE PHP 5.4 LIBRARIES: COMPOSER, DOCTRINE, MONOLOG, TWIG, GUZZLE, REACTPHP, PHPUNIT. FRAMEWORKS: SYMFONY, DRUPAL, CODEIGINITER, CAKEPHP, LARAVEL, SILEX, SLIM, ETC.
  6. 6. COMO A HHVM FUNCIONA ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??? ? ? ? ? ?
  7. 7. CONTEXTUALIZANDO… HIP HOP BYTECODE MACHINE CODE JUST IN TIME COMPILER (JIT) ABSTRACT SYNTAX TREE (AST)
  8. 8. PHP AST HHBC MACHINE CODE JIT
  9. 9. HACK AST HHBC MACHINE CODE JIT
  10. 10. ALGUNS GRAFICOS QUE IRÃO TE CONVENCER REQUISIÇÕES POR MINUTO (REQUISIÇÕES DE RÁPIDA RESPOSTA) REQUISIÇÕES POR MINUTO (REQUISIÇÕES DE LONGA RESPOSTA)
  11. 11. NÃO SURPREENDIDO? TEMPO DE RESPOSTA EM MS (REQUISIÇÃO DE RÁPIDA RESPOSTA) TEMPO DE RESPOSTA EM MS (REQUISIÇÃO DE LONGA DURAÇÃO)
  12. 12. INSTALAÇÃO - DEBIAN BASED deb http://dl.hhvm.com/ubuntu saucy main ! apt-get update! apt-get install hhvm! /etc/init.d/hhvm start! 
 #no config do nginx! location ~ .php$ {! fastcgi_index index.php;! fastcgi_keep_conn on;! include /etc/nginx/fastcgi_params;! fastcgi_pass 127.0.0.1:9000;! fastcgi_param SCRIPT_FILENAME ! $document_root$fastcgi_script_name;! }
  13. 13. INTALAÇÃO - Mac OS X brew tap homebrew/dupes ! brew tap homebrew/versions! brew tap mcuadros/homebrew-hhvm! brew install hhvm ! 
 #no config do nginx! location ~ .php$ {! fastcgi_index index.php;! fastcgi_keep_conn on;! include /etc/nginx/fastcgi_params;! fastcgi_pass 127.0.0.1:9000;! fastcgi_param SCRIPT_FILENAME ! $document_root$fastcgi_script_name;! }
  14. 14. INSTALAÇÃO - WINDOWS
  15. 15. MAS AINDA FALTA UMA COISA…
  16. 16. HACK
  17. 17. MODOS STRICT “<?hh /strict ” PARTIAL “<?hh /partial” - DEFAULT
  18. 18. TYPE ANNOTATIONS
  19. 19. GENERICS
  20. 20. COLLECTIONS
  21. 21. GENERATORS
  22. 22. CLOSURES
  23. 23. ASYNC
  24. 24. OBRIGADO! contato@leviferreira.com @leviferreira - github

×