SlideShare une entreprise Scribd logo
1  sur  32
Télécharger pour lire hors ligne
體驗HHVM 
chengwei @ Laravel 台灣 (2014.10.4)
內容概要 
! 
‧HHVM 概述 
‧Laravel Homestead + HHVM 
‧HHVM 成效 
‧HHVM 安裝 (ubuntu)
! 
陳正瑋 @ 得寬科技 DevOps 
! 
一步一步的往DevOps之路前進...
What is HHVM ? 
‧ http://zh.wikipedia.org/wiki/ 
HipHop_for_PHP 
‧ http://hhvm.com/ 
‧ https://www.facebook.com/hhvm 
‧ https://github.com/facebook/hhvm 
‧ HHVM, the new PHP? 
https://www.youtube.com/watch? 
v=fxHEuOXdCP0 
‧ HHVM: the alternative PHP Runtime 
https://www.youtube.com/watch? 
v=P9WhAUpMFdg 
more …
HipHop for PHP 
! 
來自於FACEBOOK 
! 
HPHPc → HPHPi → HHVM 
! 
HPHPc 靜態編譯,將php轉為C++ 
! 
HPHPi = HipHop interpreter 
! 
HHVM 是以 HPHPi 為基礎,應用JIT技術 
更多技術細節,請洽Google⼤大神
HHVM 
! 
Just-in-time PHP compiler 
更多技術細節,請洽Google⼤大神
HHVM 
! 
It is a different PHP runtime 
更多技術細節,請洽Google⼤大神
Nginx 
php-fpm 
mysql 
index.php
Nginx 
HHVM 
mysql 
index.php
體驗 Hhvm
重點前⾯面都不重要,真正的
Real World Apps - Benchmarks (requests per second) 
Source: Zeev Suraski http://zsuraski.blogspot.tw/2014/07/benchmarking-phpng.html 
300 
225 
150 
75 
0 
SugarCRM CE 6.5.16 - login page Wordpress 3.9 Drupal 7.28 homepage 
PHP 5.4 (no OPcache) PHP 5.5 PHP 5.6 hhvm 3.1 (prebuilt binaries) PHPNG
Laravel + HHVM
Laravel Homestead 
! 
official, pre-packaged Vagrant "box"
Laravel Homestead 
Included Software 
Homestead v0.1.9 
‧ Ubuntu 14.04 
‧ PHP 5.6 
‧ HHVM 
‧ Nginx 
‧ MySQL 
‧ Postgres 
‧ Node 
‧ Redis 
‧ Memcached 
‧ Beanstalkd 
‧ Laravel Envoy 
‧ Fabric + HipChat Extension
Before Installation 
! 
VitualBox 
https://www.virtualbox.org/wiki/Downloads 
! 
Vagrant 
http://www.vagrantup.com/downloads.html 
VirtualBox
Installation & Setup 
! 
http://laravel.tw/docs/homestead#installation-and-setup 
! 
http://laravel.com/docs/4.2/homestead#installation-and-setup 
! 
https://github.com/laravel/homestead
DEMO - Homestead: Installation 
http://youtu.be/shrMHTk4RvY
DEMO - Homestead: Setup yaml 
http://youtu.be/q4Z0DNulPUQ
DEMO - Homestead: Setup yaml (HHVM) 
http://youtu.be/B7n21DWXZ4k
nginx.conf : php-fpm 
nginx.conf : HHVM
HHVM 成效 
! 
“自從用了 HHVM ,程式跑超快的,Server 的 
數量越來越少,老闆的心情越來越好,看來加薪 
升職的日子指日可待。 ” 
! 
~ 某超級不負責任之江湖傳言
Tools 
! 
Anbu Profiler for Laravel PHP 
https://github.com/daylerees/anbu 
! 
laravel-debugbar 
https://github.com/barryvdh/laravel-debugbar 
! 
The Computer Language Benchmarks Game 
http://benchmarksgame.alioth.debian.org/u32/program.php? 
test=nbody&lang=php&id=3 
! 
ab - Apache HTTP server benchmarking tool 
http://httpd.apache.org/docs/2.2/programs/ab.html
LIVE DEMO 
Round:1 
Homestead: php-fpm vs HHVM
測試數據 
php-fpm 
HHVM
LIVE DEMO 
Round:2 
Cloud hosting: php-fpm vs HHVM
測試數據 
php-fpm 
HHVM
測試數據 (ab) 
php-fpm 
nginx + php-fpm + Wordpress
測試數據 (ab) 
HHVM 
nginx + HHVM + Wordpress
HHVM 安裝 
( ubuntu 14.04 ) 
! 
詳細步驟可參閱 http://fideloper.com/hhvm-nginx-laravel
DEMO - ubuntu: install HHVM 
http://youtu.be/3OTr1umhl9U
總結 
! 
‧Homestead 對於開發者的便利性 
‧HHVM 的發展值得關注 
‧HHVM 需要更多測試與調教

Contenu connexe

Tendances

WordPress Performance & Scalability
WordPress Performance & ScalabilityWordPress Performance & Scalability
WordPress Performance & ScalabilityJoseph Scott
 
My Opera meets Varnish, Dec 2009
My Opera meets Varnish, Dec 2009My Opera meets Varnish, Dec 2009
My Opera meets Varnish, Dec 2009Cosimo Streppone
 
Aeon mike guide transparent ssl filtering
Aeon mike guide transparent ssl filteringAeon mike guide transparent ssl filtering
Aeon mike guide transparent ssl filteringConrad Cruz
 
Aeon mike guide transparent ssl filtering (1)
Aeon mike guide transparent ssl filtering (1)Aeon mike guide transparent ssl filtering (1)
Aeon mike guide transparent ssl filtering (1)Conrad Cruz
 
IT Automation with Ansible
IT Automation with AnsibleIT Automation with Ansible
IT Automation with AnsibleRayed Alrashed
 
StackiFest16: Stacki 1600+ Server Journey - Dave Peterson, Salesforce
StackiFest16: Stacki 1600+ Server Journey - Dave Peterson, Salesforce StackiFest16: Stacki 1600+ Server Journey - Dave Peterson, Salesforce
StackiFest16: Stacki 1600+ Server Journey - Dave Peterson, Salesforce StackIQ
 
Dockerizing WordPress
Dockerizing WordPressDockerizing WordPress
Dockerizing WordPressdotCloud
 
Ansible Automation to Rule Them All
Ansible Automation to Rule Them AllAnsible Automation to Rule Them All
Ansible Automation to Rule Them AllTim Fairweather
 
PyCon Russia 2014 - Auto Scale in the Cloud
PyCon Russia 2014 - Auto Scale in the CloudPyCon Russia 2014 - Auto Scale in the Cloud
PyCon Russia 2014 - Auto Scale in the CloudSimone Soldateschi
 
StackiFest 16: Stacki Overview- Anoop Rajendra
StackiFest 16: Stacki Overview- Anoop Rajendra StackiFest 16: Stacki Overview- Anoop Rajendra
StackiFest 16: Stacki Overview- Anoop Rajendra StackIQ
 
Provisioning iOS CI Server with Ansible
Provisioning iOS CI Server with AnsibleProvisioning iOS CI Server with Ansible
Provisioning iOS CI Server with AnsibleShashikant Jagtap
 
How to turn any dynamic website into a static site | 24.01.2018 | Artem Danil...
How to turn any dynamic website into a static site | 24.01.2018 | Artem Danil...How to turn any dynamic website into a static site | 24.01.2018 | Artem Danil...
How to turn any dynamic website into a static site | 24.01.2018 | Artem Danil...LumoSpark
 
Capifony. Minsk PHP MeetUp #11
Capifony. Minsk PHP MeetUp #11Capifony. Minsk PHP MeetUp #11
Capifony. Minsk PHP MeetUp #11Yury Pliashkou
 
An Express Guide ~ Zabbix for IT Monitoring
An Express Guide ~ Zabbix for IT Monitoring An Express Guide ~ Zabbix for IT Monitoring
An Express Guide ~ Zabbix for IT Monitoring Abhishek Kumar
 
Ansible: How to Get More Sleep and Require Less Coffee
Ansible: How to Get More Sleep and Require Less CoffeeAnsible: How to Get More Sleep and Require Less Coffee
Ansible: How to Get More Sleep and Require Less CoffeeSarah Z
 
App development with quasar (pdf)
App development with quasar (pdf)App development with quasar (pdf)
App development with quasar (pdf)wonyong hwang
 

Tendances (20)

WordPress Performance & Scalability
WordPress Performance & ScalabilityWordPress Performance & Scalability
WordPress Performance & Scalability
 
My Opera meets Varnish, Dec 2009
My Opera meets Varnish, Dec 2009My Opera meets Varnish, Dec 2009
My Opera meets Varnish, Dec 2009
 
Aeon mike guide transparent ssl filtering
Aeon mike guide transparent ssl filteringAeon mike guide transparent ssl filtering
Aeon mike guide transparent ssl filtering
 
Aeon mike guide transparent ssl filtering (1)
Aeon mike guide transparent ssl filtering (1)Aeon mike guide transparent ssl filtering (1)
Aeon mike guide transparent ssl filtering (1)
 
IT Automation with Ansible
IT Automation with AnsibleIT Automation with Ansible
IT Automation with Ansible
 
grate techniques
grate techniquesgrate techniques
grate techniques
 
StackiFest16: Stacki 1600+ Server Journey - Dave Peterson, Salesforce
StackiFest16: Stacki 1600+ Server Journey - Dave Peterson, Salesforce StackiFest16: Stacki 1600+ Server Journey - Dave Peterson, Salesforce
StackiFest16: Stacki 1600+ Server Journey - Dave Peterson, Salesforce
 
Dockerizing WordPress
Dockerizing WordPressDockerizing WordPress
Dockerizing WordPress
 
Ansible Automation to Rule Them All
Ansible Automation to Rule Them AllAnsible Automation to Rule Them All
Ansible Automation to Rule Them All
 
Vagrant for real
Vagrant for realVagrant for real
Vagrant for real
 
PyCon Russia 2014 - Auto Scale in the Cloud
PyCon Russia 2014 - Auto Scale in the CloudPyCon Russia 2014 - Auto Scale in the Cloud
PyCon Russia 2014 - Auto Scale in the Cloud
 
Vagrant and CentOS 7
Vagrant and CentOS 7Vagrant and CentOS 7
Vagrant and CentOS 7
 
StackiFest 16: Stacki Overview- Anoop Rajendra
StackiFest 16: Stacki Overview- Anoop Rajendra StackiFest 16: Stacki Overview- Anoop Rajendra
StackiFest 16: Stacki Overview- Anoop Rajendra
 
Provisioning iOS CI Server with Ansible
Provisioning iOS CI Server with AnsibleProvisioning iOS CI Server with Ansible
Provisioning iOS CI Server with Ansible
 
How to turn any dynamic website into a static site | 24.01.2018 | Artem Danil...
How to turn any dynamic website into a static site | 24.01.2018 | Artem Danil...How to turn any dynamic website into a static site | 24.01.2018 | Artem Danil...
How to turn any dynamic website into a static site | 24.01.2018 | Artem Danil...
 
Capifony. Minsk PHP MeetUp #11
Capifony. Minsk PHP MeetUp #11Capifony. Minsk PHP MeetUp #11
Capifony. Minsk PHP MeetUp #11
 
Introducing Ansible
Introducing AnsibleIntroducing Ansible
Introducing Ansible
 
An Express Guide ~ Zabbix for IT Monitoring
An Express Guide ~ Zabbix for IT Monitoring An Express Guide ~ Zabbix for IT Monitoring
An Express Guide ~ Zabbix for IT Monitoring
 
Ansible: How to Get More Sleep and Require Less Coffee
Ansible: How to Get More Sleep and Require Less CoffeeAnsible: How to Get More Sleep and Require Less Coffee
Ansible: How to Get More Sleep and Require Less Coffee
 
App development with quasar (pdf)
App development with quasar (pdf)App development with quasar (pdf)
App development with quasar (pdf)
 

En vedette

QNAP MOPCON 2015 - 輕鬆打造持續整合開發環境,使用 QNAP Docker
QNAP MOPCON 2015 -  輕鬆打造持續整合開發環境,使用 QNAP DockerQNAP MOPCON 2015 -  輕鬆打造持續整合開發環境,使用 QNAP Docker
QNAP MOPCON 2015 - 輕鬆打造持續整合開發環境,使用 QNAP DockerWu Fan-Cheng
 
Develop QNAP NAS App by Docker
Develop QNAP NAS App by DockerDevelop QNAP NAS App by Docker
Develop QNAP NAS App by DockerTerry Chen
 
Docker and DevOps --- new IT culture
Docker and DevOps --- new IT cultureDocker and DevOps --- new IT culture
Docker and DevOps --- new IT cultureTerry Chen
 
Using Docker for Testing
Using Docker for TestingUsing Docker for Testing
Using Docker for TestingCarlos Sanchez
 
DockerCon EU 2015: Continuous Integration with Jenkins, Docker and Compose
DockerCon EU 2015: Continuous Integration with Jenkins, Docker and ComposeDockerCon EU 2015: Continuous Integration with Jenkins, Docker and Compose
DockerCon EU 2015: Continuous Integration with Jenkins, Docker and ComposeDocker, Inc.
 
DevOps and Continuous Delivery reference architectures for Docker
DevOps and Continuous Delivery reference architectures for DockerDevOps and Continuous Delivery reference architectures for Docker
DevOps and Continuous Delivery reference architectures for DockerSonatype
 

En vedette (6)

QNAP MOPCON 2015 - 輕鬆打造持續整合開發環境,使用 QNAP Docker
QNAP MOPCON 2015 -  輕鬆打造持續整合開發環境,使用 QNAP DockerQNAP MOPCON 2015 -  輕鬆打造持續整合開發環境,使用 QNAP Docker
QNAP MOPCON 2015 - 輕鬆打造持續整合開發環境,使用 QNAP Docker
 
Develop QNAP NAS App by Docker
Develop QNAP NAS App by DockerDevelop QNAP NAS App by Docker
Develop QNAP NAS App by Docker
 
Docker and DevOps --- new IT culture
Docker and DevOps --- new IT cultureDocker and DevOps --- new IT culture
Docker and DevOps --- new IT culture
 
Using Docker for Testing
Using Docker for TestingUsing Docker for Testing
Using Docker for Testing
 
DockerCon EU 2015: Continuous Integration with Jenkins, Docker and Compose
DockerCon EU 2015: Continuous Integration with Jenkins, Docker and ComposeDockerCon EU 2015: Continuous Integration with Jenkins, Docker and Compose
DockerCon EU 2015: Continuous Integration with Jenkins, Docker and Compose
 
DevOps and Continuous Delivery reference architectures for Docker
DevOps and Continuous Delivery reference architectures for DockerDevOps and Continuous Delivery reference architectures for Docker
DevOps and Continuous Delivery reference architectures for Docker
 

Similaire à 體驗 Hhvm

ZendCon 2015 - Laravel Forge: Hello World to Hello Production
ZendCon 2015 - Laravel Forge: Hello World to Hello ProductionZendCon 2015 - Laravel Forge: Hello World to Hello Production
ZendCon 2015 - Laravel Forge: Hello World to Hello ProductionJoe Ferguson
 
Php through the eyes of a hoster confoo
Php through the eyes of a hoster confooPhp through the eyes of a hoster confoo
Php through the eyes of a hoster confooCombell NV
 
Laravel Forge: Hello World to Hello Production
Laravel Forge: Hello World to Hello ProductionLaravel Forge: Hello World to Hello Production
Laravel Forge: Hello World to Hello ProductionJoe Ferguson
 
Laravel Forge: Hello World to Hello Production
Laravel Forge: Hello World to Hello ProductionLaravel Forge: Hello World to Hello Production
Laravel Forge: Hello World to Hello ProductionJoe Ferguson
 
Madison PHP 2015 - DevOps For Small Teams
Madison PHP 2015 - DevOps For Small TeamsMadison PHP 2015 - DevOps For Small Teams
Madison PHP 2015 - DevOps For Small TeamsJoe Ferguson
 
ZendCon 2015 - DevOps for Small Teams
ZendCon 2015 - DevOps for Small TeamsZendCon 2015 - DevOps for Small Teams
ZendCon 2015 - DevOps for Small TeamsJoe Ferguson
 
Use Xdebug to profile PHP
Use Xdebug to profile PHPUse Xdebug to profile PHP
Use Xdebug to profile PHPSeravo
 
[Community Open Camp] 給 PHP 開發者的 VS Code 指南
[Community Open Camp] 給 PHP 開發者的 VS Code 指南[Community Open Camp] 給 PHP 開發者的 VS Code 指南
[Community Open Camp] 給 PHP 開發者的 VS Code 指南Shengyou Fan
 
Php hypertext Preprocessor
Php hypertext PreprocessorPhp hypertext Preprocessor
Php hypertext PreprocessorMrsRLakshmiIT
 
Apache web server tutorial for linux
Apache web server tutorial for linuxApache web server tutorial for linux
Apache web server tutorial for linuxSahad Sali
 
Configuration Management with Puppet
Configuration Management with Puppet Configuration Management with Puppet
Configuration Management with Puppet Rachel Andrew
 
Magento Installation - LINUX.pptx
Magento Installation - LINUX.pptxMagento Installation - LINUX.pptx
Magento Installation - LINUX.pptxGazni1
 
Php internal-release 2011-04-01-v0.5.2
Php internal-release 2011-04-01-v0.5.2Php internal-release 2011-04-01-v0.5.2
Php internal-release 2011-04-01-v0.5.2PL dream
 
An Introduction to Xdebug for WordPress
An Introduction to Xdebug for WordPressAn Introduction to Xdebug for WordPress
An Introduction to Xdebug for WordPressKayleigh Thorpe
 
php[world] 2015 Training - Laravel from the Ground Up
php[world] 2015 Training - Laravel from the Ground Upphp[world] 2015 Training - Laravel from the Ground Up
php[world] 2015 Training - Laravel from the Ground UpJoe Ferguson
 
Vagrant up-and-running
Vagrant up-and-runningVagrant up-and-running
Vagrant up-and-runningJoe Ferguson
 
HAProxy scale out using open source
HAProxy scale out using open sourceHAProxy scale out using open source
HAProxy scale out using open sourceIngo Walz
 

Similaire à 體驗 Hhvm (20)

DevOps for Developers
DevOps for DevelopersDevOps for Developers
DevOps for Developers
 
ZendCon 2015 - Laravel Forge: Hello World to Hello Production
ZendCon 2015 - Laravel Forge: Hello World to Hello ProductionZendCon 2015 - Laravel Forge: Hello World to Hello Production
ZendCon 2015 - Laravel Forge: Hello World to Hello Production
 
Php through the eyes of a hoster confoo
Php through the eyes of a hoster confooPhp through the eyes of a hoster confoo
Php through the eyes of a hoster confoo
 
Laravel Forge: Hello World to Hello Production
Laravel Forge: Hello World to Hello ProductionLaravel Forge: Hello World to Hello Production
Laravel Forge: Hello World to Hello Production
 
Dev ops for developers
Dev ops for developersDev ops for developers
Dev ops for developers
 
Laravel Forge: Hello World to Hello Production
Laravel Forge: Hello World to Hello ProductionLaravel Forge: Hello World to Hello Production
Laravel Forge: Hello World to Hello Production
 
Madison PHP 2015 - DevOps For Small Teams
Madison PHP 2015 - DevOps For Small TeamsMadison PHP 2015 - DevOps For Small Teams
Madison PHP 2015 - DevOps For Small Teams
 
ZendCon 2015 - DevOps for Small Teams
ZendCon 2015 - DevOps for Small TeamsZendCon 2015 - DevOps for Small Teams
ZendCon 2015 - DevOps for Small Teams
 
Use Xdebug to profile PHP
Use Xdebug to profile PHPUse Xdebug to profile PHP
Use Xdebug to profile PHP
 
[Community Open Camp] 給 PHP 開發者的 VS Code 指南
[Community Open Camp] 給 PHP 開發者的 VS Code 指南[Community Open Camp] 給 PHP 開發者的 VS Code 指南
[Community Open Camp] 給 PHP 開發者的 VS Code 指南
 
Php hypertext Preprocessor
Php hypertext PreprocessorPhp hypertext Preprocessor
Php hypertext Preprocessor
 
Apache web server tutorial for linux
Apache web server tutorial for linuxApache web server tutorial for linux
Apache web server tutorial for linux
 
Configuration Management with Puppet
Configuration Management with Puppet Configuration Management with Puppet
Configuration Management with Puppet
 
Magento Installation - LINUX.pptx
Magento Installation - LINUX.pptxMagento Installation - LINUX.pptx
Magento Installation - LINUX.pptx
 
Php internal-release 2011-04-01-v0.5.2
Php internal-release 2011-04-01-v0.5.2Php internal-release 2011-04-01-v0.5.2
Php internal-release 2011-04-01-v0.5.2
 
An Introduction to Xdebug for WordPress
An Introduction to Xdebug for WordPressAn Introduction to Xdebug for WordPress
An Introduction to Xdebug for WordPress
 
php[world] 2015 Training - Laravel from the Ground Up
php[world] 2015 Training - Laravel from the Ground Upphp[world] 2015 Training - Laravel from the Ground Up
php[world] 2015 Training - Laravel from the Ground Up
 
Vagrant up-and-running
Vagrant up-and-runningVagrant up-and-running
Vagrant up-and-running
 
HAProxy scale out using open source
HAProxy scale out using open sourceHAProxy scale out using open source
HAProxy scale out using open source
 
What the HACK is HHVM?
What the HACK is HHVM?What the HACK is HHVM?
What the HACK is HHVM?
 

Plus de Chen Cheng-Wei

GitOps is IaC done right
GitOps is IaC done rightGitOps is IaC done right
GitOps is IaC done rightChen Cheng-Wei
 
GitLab Auto DevOps 大解析—CI/CD 原來可以這樣做
GitLab Auto DevOps 大解析—CI/CD 原來可以這樣做GitLab Auto DevOps 大解析—CI/CD 原來可以這樣做
GitLab Auto DevOps 大解析—CI/CD 原來可以這樣做Chen Cheng-Wei
 
From DevOps to GitOps with GitLab
From DevOps to GitOps with GitLabFrom DevOps to GitOps with GitLab
From DevOps to GitOps with GitLabChen Cheng-Wei
 
和艦長一起玩轉 GitLab & GitLab Workflow
和艦長一起玩轉 GitLab & GitLab Workflow和艦長一起玩轉 GitLab & GitLab Workflow
和艦長一起玩轉 GitLab & GitLab WorkflowChen Cheng-Wei
 
以自動化先行的 DevOps 實踐經驗分享
以自動化先行的 DevOps 實踐經驗分享以自動化先行的 DevOps 實踐經驗分享
以自動化先行的 DevOps 實踐經驗分享Chen Cheng-Wei
 
SRE 讀書會:導讀《持續交付》第15章 - 持續交付管理
SRE 讀書會:導讀《持續交付》第15章 - 持續交付管理SRE 讀書會:導讀《持續交付》第15章 - 持續交付管理
SRE 讀書會:導讀《持續交付》第15章 - 持續交付管理Chen Cheng-Wei
 
DevOpsDays Taiepi 2018 - Farewell 閉幕
DevOpsDays Taiepi 2018 - Farewell 閉幕DevOpsDays Taiepi 2018 - Farewell 閉幕
DevOpsDays Taiepi 2018 - Farewell 閉幕Chen Cheng-Wei
 
SRE 讀書會 - 導讀:第 31 章
SRE 讀書會 - 導讀:第 31 章SRE 讀書會 - 導讀:第 31 章
SRE 讀書會 - 導讀:第 31 章Chen Cheng-Wei
 
SRE 讀書會 - 導讀:第 30 章
SRE 讀書會 - 導讀:第 30 章SRE 讀書會 - 導讀:第 30 章
SRE 讀書會 - 導讀:第 30 章Chen Cheng-Wei
 
跟著 geerlingguy 大神
一起測試 Ansible Roles
跟著 geerlingguy 大神
一起測試 Ansible Roles跟著 geerlingguy 大神
一起測試 Ansible Roles
跟著 geerlingguy 大神
一起測試 Ansible RolesChen Cheng-Wei
 
iThome Serverless All-Star 開場
iThome Serverless All-Star 開場iThome Serverless All-Star 開場
iThome Serverless All-Star 開場Chen Cheng-Wei
 
CI/CD、自動化,你還沒準備好(GCPUG.TW Meetup #34)
CI/CD、自動化,你還沒準備好(GCPUG.TW Meetup #34)CI/CD、自動化,你還沒準備好(GCPUG.TW Meetup #34)
CI/CD、自動化,你還沒準備好(GCPUG.TW Meetup #34)Chen Cheng-Wei
 
Ansible & GitLab CI / CD Workshop 101 ( @Agile Tour Taipei 2017)
Ansible & GitLab CI / CD Workshop 101 ( @Agile Tour Taipei 2017)Ansible & GitLab CI / CD Workshop 101 ( @Agile Tour Taipei 2017)
Ansible & GitLab CI / CD Workshop 101 ( @Agile Tour Taipei 2017)Chen Cheng-Wei
 
CI、CD、Automation你還沒準備好!?(Agile Tour Kaohsiung 2017)
CI、CD、Automation你還沒準備好!?(Agile Tour Kaohsiung 2017)CI、CD、Automation你還沒準備好!?(Agile Tour Kaohsiung 2017)
CI、CD、Automation你還沒準備好!?(Agile Tour Kaohsiung 2017)Chen Cheng-Wei
 
Effective DevOps (Agile Tour HsinChu 2017)
Effective DevOps (Agile Tour HsinChu 2017)Effective DevOps (Agile Tour HsinChu 2017)
Effective DevOps (Agile Tour HsinChu 2017)Chen Cheng-Wei
 
SRE 讀書會 - 導讀:第一章
SRE 讀書會 - 導讀:第一章SRE 讀書會 - 導讀:第一章
SRE 讀書會 - 導讀:第一章Chen Cheng-Wei
 
DevOpsDays Taipei 2017 Opening Talk
DevOpsDays Taipei 2017 Opening TalkDevOpsDays Taipei 2017 Opening Talk
DevOpsDays Taipei 2017 Opening TalkChen Cheng-Wei
 
DevOpsDays Taipei 2017 Farewell
DevOpsDays Taipei 2017 FarewellDevOpsDays Taipei 2017 Farewell
DevOpsDays Taipei 2017 FarewellChen Cheng-Wei
 

Plus de Chen Cheng-Wei (20)

GitOps is IaC done right
GitOps is IaC done rightGitOps is IaC done right
GitOps is IaC done right
 
GitLab Auto DevOps 大解析—CI/CD 原來可以這樣做
GitLab Auto DevOps 大解析—CI/CD 原來可以這樣做GitLab Auto DevOps 大解析—CI/CD 原來可以這樣做
GitLab Auto DevOps 大解析—CI/CD 原來可以這樣做
 
From DevOps to GitOps with GitLab
From DevOps to GitOps with GitLabFrom DevOps to GitOps with GitLab
From DevOps to GitOps with GitLab
 
Become a GitLab Hero
Become a GitLab HeroBecome a GitLab Hero
Become a GitLab Hero
 
和艦長一起玩轉 GitLab & GitLab Workflow
和艦長一起玩轉 GitLab & GitLab Workflow和艦長一起玩轉 GitLab & GitLab Workflow
和艦長一起玩轉 GitLab & GitLab Workflow
 
以自動化先行的 DevOps 實踐經驗分享
以自動化先行的 DevOps 實踐經驗分享以自動化先行的 DevOps 實踐經驗分享
以自動化先行的 DevOps 實踐經驗分享
 
SRE 讀書會:導讀《持續交付》第15章 - 持續交付管理
SRE 讀書會:導讀《持續交付》第15章 - 持續交付管理SRE 讀書會:導讀《持續交付》第15章 - 持續交付管理
SRE 讀書會:導讀《持續交付》第15章 - 持續交付管理
 
DevOpsDays Taiepi 2018 - Farewell 閉幕
DevOpsDays Taiepi 2018 - Farewell 閉幕DevOpsDays Taiepi 2018 - Farewell 閉幕
DevOpsDays Taiepi 2018 - Farewell 閉幕
 
SRE 讀書會 - 導讀:第 31 章
SRE 讀書會 - 導讀:第 31 章SRE 讀書會 - 導讀:第 31 章
SRE 讀書會 - 導讀:第 31 章
 
SRE 讀書會 - 導讀:第 30 章
SRE 讀書會 - 導讀:第 30 章SRE 讀書會 - 導讀:第 30 章
SRE 讀書會 - 導讀:第 30 章
 
跟著 geerlingguy 大神
一起測試 Ansible Roles
跟著 geerlingguy 大神
一起測試 Ansible Roles跟著 geerlingguy 大神
一起測試 Ansible Roles
跟著 geerlingguy 大神
一起測試 Ansible Roles
 
iThome Serverless All-Star 開場
iThome Serverless All-Star 開場iThome Serverless All-Star 開場
iThome Serverless All-Star 開場
 
CI/CD、自動化,你還沒準備好(GCPUG.TW Meetup #34)
CI/CD、自動化,你還沒準備好(GCPUG.TW Meetup #34)CI/CD、自動化,你還沒準備好(GCPUG.TW Meetup #34)
CI/CD、自動化,你還沒準備好(GCPUG.TW Meetup #34)
 
Ignite talks
Ignite talksIgnite talks
Ignite talks
 
Ansible & GitLab CI / CD Workshop 101 ( @Agile Tour Taipei 2017)
Ansible & GitLab CI / CD Workshop 101 ( @Agile Tour Taipei 2017)Ansible & GitLab CI / CD Workshop 101 ( @Agile Tour Taipei 2017)
Ansible & GitLab CI / CD Workshop 101 ( @Agile Tour Taipei 2017)
 
CI、CD、Automation你還沒準備好!?(Agile Tour Kaohsiung 2017)
CI、CD、Automation你還沒準備好!?(Agile Tour Kaohsiung 2017)CI、CD、Automation你還沒準備好!?(Agile Tour Kaohsiung 2017)
CI、CD、Automation你還沒準備好!?(Agile Tour Kaohsiung 2017)
 
Effective DevOps (Agile Tour HsinChu 2017)
Effective DevOps (Agile Tour HsinChu 2017)Effective DevOps (Agile Tour HsinChu 2017)
Effective DevOps (Agile Tour HsinChu 2017)
 
SRE 讀書會 - 導讀:第一章
SRE 讀書會 - 導讀:第一章SRE 讀書會 - 導讀:第一章
SRE 讀書會 - 導讀:第一章
 
DevOpsDays Taipei 2017 Opening Talk
DevOpsDays Taipei 2017 Opening TalkDevOpsDays Taipei 2017 Opening Talk
DevOpsDays Taipei 2017 Opening Talk
 
DevOpsDays Taipei 2017 Farewell
DevOpsDays Taipei 2017 FarewellDevOpsDays Taipei 2017 Farewell
DevOpsDays Taipei 2017 Farewell
 

Dernier

Fields in Java and Kotlin and what to expect.pptx
Fields in Java and Kotlin and what to expect.pptxFields in Java and Kotlin and what to expect.pptx
Fields in Java and Kotlin and what to expect.pptxJoão Esperancinha
 
Leveraging DxSherpa's Generative AI Services to Unlock Human-Machine Harmony
Leveraging DxSherpa's Generative AI Services to Unlock Human-Machine HarmonyLeveraging DxSherpa's Generative AI Services to Unlock Human-Machine Harmony
Leveraging DxSherpa's Generative AI Services to Unlock Human-Machine Harmonyelliciumsolutionspun
 
Optimizing Business Potential: A Guide to Outsourcing Engineering Services in...
Optimizing Business Potential: A Guide to Outsourcing Engineering Services in...Optimizing Business Potential: A Guide to Outsourcing Engineering Services in...
Optimizing Business Potential: A Guide to Outsourcing Engineering Services in...Jaydeep Chhasatia
 
Your Vision, Our Expertise: TECUNIQUE's Tailored Software Teams
Your Vision, Our Expertise: TECUNIQUE's Tailored Software TeamsYour Vision, Our Expertise: TECUNIQUE's Tailored Software Teams
Your Vision, Our Expertise: TECUNIQUE's Tailored Software TeamsJaydeep Chhasatia
 
Kawika Technologies pvt ltd Software Development Company in Trivandrum
Kawika Technologies pvt ltd Software Development Company in TrivandrumKawika Technologies pvt ltd Software Development Company in Trivandrum
Kawika Technologies pvt ltd Software Development Company in TrivandrumKawika Technologies
 
Generative AI for Cybersecurity - EC-Council
Generative AI for Cybersecurity - EC-CouncilGenerative AI for Cybersecurity - EC-Council
Generative AI for Cybersecurity - EC-CouncilVICTOR MAESTRE RAMIREZ
 
online pdf editor software solutions.pdf
online pdf editor software solutions.pdfonline pdf editor software solutions.pdf
online pdf editor software solutions.pdfMeon Technology
 
Introduction-to-Software-Development-Outsourcing.pptx
Introduction-to-Software-Development-Outsourcing.pptxIntroduction-to-Software-Development-Outsourcing.pptx
Introduction-to-Software-Development-Outsourcing.pptxIntelliSource Technologies
 
Growing Oxen: channel operators and retries
Growing Oxen: channel operators and retriesGrowing Oxen: channel operators and retries
Growing Oxen: channel operators and retriesSoftwareMill
 
Top Software Development Trends in 2024
Top Software Development Trends in  2024Top Software Development Trends in  2024
Top Software Development Trends in 2024Mind IT Systems
 
Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...
Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...
Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...OnePlan Solutions
 
ARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdf
ARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdfARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdf
ARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdfTobias Schneck
 
Why Choose Brain Inventory For Ecommerce Development.pdf
Why Choose Brain Inventory For Ecommerce Development.pdfWhy Choose Brain Inventory For Ecommerce Development.pdf
Why Choose Brain Inventory For Ecommerce Development.pdfBrain Inventory
 
Enterprise Document Management System - Qualityze Inc
Enterprise Document Management System - Qualityze IncEnterprise Document Management System - Qualityze Inc
Enterprise Document Management System - Qualityze Incrobinwilliams8624
 
Big Data Bellevue Meetup | Enhancing Python Data Loading in the Cloud for AI/ML
Big Data Bellevue Meetup | Enhancing Python Data Loading in the Cloud for AI/MLBig Data Bellevue Meetup | Enhancing Python Data Loading in the Cloud for AI/ML
Big Data Bellevue Meetup | Enhancing Python Data Loading in the Cloud for AI/MLAlluxio, Inc.
 
eAuditor Audits & Inspections - conduct field inspections
eAuditor Audits & Inspections - conduct field inspectionseAuditor Audits & Inspections - conduct field inspections
eAuditor Audits & Inspections - conduct field inspectionsNirav Modi
 
Streamlining Your Application Builds with Cloud Native Buildpacks
Streamlining Your Application Builds  with Cloud Native BuildpacksStreamlining Your Application Builds  with Cloud Native Buildpacks
Streamlining Your Application Builds with Cloud Native BuildpacksVish Abrams
 
Deep Learning for Images with PyTorch - Datacamp
Deep Learning for Images with PyTorch - DatacampDeep Learning for Images with PyTorch - Datacamp
Deep Learning for Images with PyTorch - DatacampVICTOR MAESTRE RAMIREZ
 
JS-Experts - Cybersecurity for Generative AI
JS-Experts - Cybersecurity for Generative AIJS-Experts - Cybersecurity for Generative AI
JS-Experts - Cybersecurity for Generative AIIvo Andreev
 

Dernier (20)

Fields in Java and Kotlin and what to expect.pptx
Fields in Java and Kotlin and what to expect.pptxFields in Java and Kotlin and what to expect.pptx
Fields in Java and Kotlin and what to expect.pptx
 
Leveraging DxSherpa's Generative AI Services to Unlock Human-Machine Harmony
Leveraging DxSherpa's Generative AI Services to Unlock Human-Machine HarmonyLeveraging DxSherpa's Generative AI Services to Unlock Human-Machine Harmony
Leveraging DxSherpa's Generative AI Services to Unlock Human-Machine Harmony
 
Salesforce AI Associate Certification.pptx
Salesforce AI Associate Certification.pptxSalesforce AI Associate Certification.pptx
Salesforce AI Associate Certification.pptx
 
Optimizing Business Potential: A Guide to Outsourcing Engineering Services in...
Optimizing Business Potential: A Guide to Outsourcing Engineering Services in...Optimizing Business Potential: A Guide to Outsourcing Engineering Services in...
Optimizing Business Potential: A Guide to Outsourcing Engineering Services in...
 
Your Vision, Our Expertise: TECUNIQUE's Tailored Software Teams
Your Vision, Our Expertise: TECUNIQUE's Tailored Software TeamsYour Vision, Our Expertise: TECUNIQUE's Tailored Software Teams
Your Vision, Our Expertise: TECUNIQUE's Tailored Software Teams
 
Kawika Technologies pvt ltd Software Development Company in Trivandrum
Kawika Technologies pvt ltd Software Development Company in TrivandrumKawika Technologies pvt ltd Software Development Company in Trivandrum
Kawika Technologies pvt ltd Software Development Company in Trivandrum
 
Generative AI for Cybersecurity - EC-Council
Generative AI for Cybersecurity - EC-CouncilGenerative AI for Cybersecurity - EC-Council
Generative AI for Cybersecurity - EC-Council
 
online pdf editor software solutions.pdf
online pdf editor software solutions.pdfonline pdf editor software solutions.pdf
online pdf editor software solutions.pdf
 
Introduction-to-Software-Development-Outsourcing.pptx
Introduction-to-Software-Development-Outsourcing.pptxIntroduction-to-Software-Development-Outsourcing.pptx
Introduction-to-Software-Development-Outsourcing.pptx
 
Growing Oxen: channel operators and retries
Growing Oxen: channel operators and retriesGrowing Oxen: channel operators and retries
Growing Oxen: channel operators and retries
 
Top Software Development Trends in 2024
Top Software Development Trends in  2024Top Software Development Trends in  2024
Top Software Development Trends in 2024
 
Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...
Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...
Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...
 
ARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdf
ARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdfARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdf
ARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdf
 
Why Choose Brain Inventory For Ecommerce Development.pdf
Why Choose Brain Inventory For Ecommerce Development.pdfWhy Choose Brain Inventory For Ecommerce Development.pdf
Why Choose Brain Inventory For Ecommerce Development.pdf
 
Enterprise Document Management System - Qualityze Inc
Enterprise Document Management System - Qualityze IncEnterprise Document Management System - Qualityze Inc
Enterprise Document Management System - Qualityze Inc
 
Big Data Bellevue Meetup | Enhancing Python Data Loading in the Cloud for AI/ML
Big Data Bellevue Meetup | Enhancing Python Data Loading in the Cloud for AI/MLBig Data Bellevue Meetup | Enhancing Python Data Loading in the Cloud for AI/ML
Big Data Bellevue Meetup | Enhancing Python Data Loading in the Cloud for AI/ML
 
eAuditor Audits & Inspections - conduct field inspections
eAuditor Audits & Inspections - conduct field inspectionseAuditor Audits & Inspections - conduct field inspections
eAuditor Audits & Inspections - conduct field inspections
 
Streamlining Your Application Builds with Cloud Native Buildpacks
Streamlining Your Application Builds  with Cloud Native BuildpacksStreamlining Your Application Builds  with Cloud Native Buildpacks
Streamlining Your Application Builds with Cloud Native Buildpacks
 
Deep Learning for Images with PyTorch - Datacamp
Deep Learning for Images with PyTorch - DatacampDeep Learning for Images with PyTorch - Datacamp
Deep Learning for Images with PyTorch - Datacamp
 
JS-Experts - Cybersecurity for Generative AI
JS-Experts - Cybersecurity for Generative AIJS-Experts - Cybersecurity for Generative AI
JS-Experts - Cybersecurity for Generative AI
 

體驗 Hhvm

  • 1. 體驗HHVM chengwei @ Laravel 台灣 (2014.10.4)
  • 2. 內容概要 ! ‧HHVM 概述 ‧Laravel Homestead + HHVM ‧HHVM 成效 ‧HHVM 安裝 (ubuntu)
  • 3. ! 陳正瑋 @ 得寬科技 DevOps ! 一步一步的往DevOps之路前進...
  • 4. What is HHVM ? ‧ http://zh.wikipedia.org/wiki/ HipHop_for_PHP ‧ http://hhvm.com/ ‧ https://www.facebook.com/hhvm ‧ https://github.com/facebook/hhvm ‧ HHVM, the new PHP? https://www.youtube.com/watch? v=fxHEuOXdCP0 ‧ HHVM: the alternative PHP Runtime https://www.youtube.com/watch? v=P9WhAUpMFdg more …
  • 5. HipHop for PHP ! 來自於FACEBOOK ! HPHPc → HPHPi → HHVM ! HPHPc 靜態編譯,將php轉為C++ ! HPHPi = HipHop interpreter ! HHVM 是以 HPHPi 為基礎,應用JIT技術 更多技術細節,請洽Google⼤大神
  • 6. HHVM ! Just-in-time PHP compiler 更多技術細節,請洽Google⼤大神
  • 7. HHVM ! It is a different PHP runtime 更多技術細節,請洽Google⼤大神
  • 9. Nginx HHVM mysql index.php
  • 12. Real World Apps - Benchmarks (requests per second) Source: Zeev Suraski http://zsuraski.blogspot.tw/2014/07/benchmarking-phpng.html 300 225 150 75 0 SugarCRM CE 6.5.16 - login page Wordpress 3.9 Drupal 7.28 homepage PHP 5.4 (no OPcache) PHP 5.5 PHP 5.6 hhvm 3.1 (prebuilt binaries) PHPNG
  • 14. Laravel Homestead ! official, pre-packaged Vagrant "box"
  • 15. Laravel Homestead Included Software Homestead v0.1.9 ‧ Ubuntu 14.04 ‧ PHP 5.6 ‧ HHVM ‧ Nginx ‧ MySQL ‧ Postgres ‧ Node ‧ Redis ‧ Memcached ‧ Beanstalkd ‧ Laravel Envoy ‧ Fabric + HipChat Extension
  • 16. Before Installation ! VitualBox https://www.virtualbox.org/wiki/Downloads ! Vagrant http://www.vagrantup.com/downloads.html VirtualBox
  • 17. Installation & Setup ! http://laravel.tw/docs/homestead#installation-and-setup ! http://laravel.com/docs/4.2/homestead#installation-and-setup ! https://github.com/laravel/homestead
  • 18. DEMO - Homestead: Installation http://youtu.be/shrMHTk4RvY
  • 19. DEMO - Homestead: Setup yaml http://youtu.be/q4Z0DNulPUQ
  • 20. DEMO - Homestead: Setup yaml (HHVM) http://youtu.be/B7n21DWXZ4k
  • 21. nginx.conf : php-fpm nginx.conf : HHVM
  • 22. HHVM 成效 ! “自從用了 HHVM ,程式跑超快的,Server 的 數量越來越少,老闆的心情越來越好,看來加薪 升職的日子指日可待。 ” ! ~ 某超級不負責任之江湖傳言
  • 23. Tools ! Anbu Profiler for Laravel PHP https://github.com/daylerees/anbu ! laravel-debugbar https://github.com/barryvdh/laravel-debugbar ! The Computer Language Benchmarks Game http://benchmarksgame.alioth.debian.org/u32/program.php? test=nbody&lang=php&id=3 ! ab - Apache HTTP server benchmarking tool http://httpd.apache.org/docs/2.2/programs/ab.html
  • 24. LIVE DEMO Round:1 Homestead: php-fpm vs HHVM
  • 26. LIVE DEMO Round:2 Cloud hosting: php-fpm vs HHVM
  • 28. 測試數據 (ab) php-fpm nginx + php-fpm + Wordpress
  • 29. 測試數據 (ab) HHVM nginx + HHVM + Wordpress
  • 30. HHVM 安裝 ( ubuntu 14.04 ) ! 詳細步驟可參閱 http://fideloper.com/hhvm-nginx-laravel
  • 31. DEMO - ubuntu: install HHVM http://youtu.be/3OTr1umhl9U
  • 32. 總結 ! ‧Homestead 對於開發者的便利性 ‧HHVM 的發展值得關注 ‧HHVM 需要更多測試與調教