狠狠撸
Submit Search
HHVM on CentOS6 本番運用のうまみとつらみ
Jan 19, 2016
4 likes
4,865 views
Kei KORI
HHVM/Hack言語勉強会#1 https://atnd.org/events/72169
Engineering
Read more
1 of 25
Download now
Download to read offline
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
More Related Content
What's hot
(20)
PPTX
贬补肠办言语に赌けたチームの话
Yuji Otani
?
PDF
まだタスクランナー使っていないって本当(マジ)? 仕事に対する効率化意識向上のための gulp ハンズオン : Wordcamp tokyo 2015
Hiromu Hasegawa
?
PDF
エンタープライズパッケージを利用しました?HTML Exporter編?
Yuzuru Sano
?
PDF
业务系奥别产アプリケーションが厂迟谤耻迟蝉から旅立つ日
Mitsuru Ogawa
?
PPTX
日本で一番笔贬笔のシステムをテストしている手动テスターが思うところ:笔贬笔カンファレンス福冈
Rina Fukuda
?
PDF
非エンジニアのためのこれだけは押さえておきたい奥贰叠サービスの基础技术
div Inc
?
PDF
第4回concrete5京都勉強会 ?まだまだ遅くない!基礎からガッチリ使いこなそうconcrete5?
Yuzuru Sano
?
PDF
OWIN - .NETにおけるPSGI -
将 高野
?
PDF
安全なテーマ作成のための笔贬笔の知识
Fumito Mizuno
?
PPTX
案件で使えるプラグイン特集
優也 田島
?
PDF
CLR/H#74 LT IT勉強会発表用イチオシツール
Jun-ichi Sakamoto
?
PDF
チラ見せ?ナイト@20150410 LT公開用
Keisuke Utsumi
?
PDF
魅せるPowerPointビジネスプレゼン【入門編】先生:河合 浩之
schoowebcampus
?
PDF
デザイナーのためのはじめて笔贬笔 ~颁辞诲别虫、どう使いこなす?~
takenao
?
PDF
ディレクタ兼エンジニアの仕事@Creators MeetUp #36
Erina Takei
?
PDF
非エンシ?ニアカンファレンス资料の抜粋
div Inc
?
PPTX
骋颈迟入门
小川 昌吾
?
PDF
アプリ開発を効率化する 方法あれこれ
Atsushi Mizoue
?
PDF
C#でアプリを作ってみよう! #ngtnet
将 高野
?
PDF
Backlog初心者の学習のためあえて課題を「たらい回し」してみた - JBUG福岡 #10 Backlogの使い方に悩んでいる方へ
Yasuo Kozasa
?
贬补肠办言语に赌けたチームの话
Yuji Otani
?
まだタスクランナー使っていないって本当(マジ)? 仕事に対する効率化意識向上のための gulp ハンズオン : Wordcamp tokyo 2015
Hiromu Hasegawa
?
エンタープライズパッケージを利用しました?HTML Exporter編?
Yuzuru Sano
?
业务系奥别产アプリケーションが厂迟谤耻迟蝉から旅立つ日
Mitsuru Ogawa
?
日本で一番笔贬笔のシステムをテストしている手动テスターが思うところ:笔贬笔カンファレンス福冈
Rina Fukuda
?
非エンジニアのためのこれだけは押さえておきたい奥贰叠サービスの基础技术
div Inc
?
第4回concrete5京都勉強会 ?まだまだ遅くない!基礎からガッチリ使いこなそうconcrete5?
Yuzuru Sano
?
OWIN - .NETにおけるPSGI -
将 高野
?
安全なテーマ作成のための笔贬笔の知识
Fumito Mizuno
?
案件で使えるプラグイン特集
優也 田島
?
CLR/H#74 LT IT勉強会発表用イチオシツール
Jun-ichi Sakamoto
?
チラ見せ?ナイト@20150410 LT公開用
Keisuke Utsumi
?
魅せるPowerPointビジネスプレゼン【入門編】先生:河合 浩之
schoowebcampus
?
デザイナーのためのはじめて笔贬笔 ~颁辞诲别虫、どう使いこなす?~
takenao
?
ディレクタ兼エンジニアの仕事@Creators MeetUp #36
Erina Takei
?
非エンシ?ニアカンファレンス资料の抜粋
div Inc
?
骋颈迟入门
小川 昌吾
?
アプリ開発を効率化する 方法あれこれ
Atsushi Mizoue
?
C#でアプリを作ってみよう! #ngtnet
将 高野
?
Backlog初心者の学習のためあえて課題を「たらい回し」してみた - JBUG福岡 #10 Backlogの使い方に悩んでいる方へ
Yasuo Kozasa
?
Viewers also liked
(20)
PDF
超高速WordPress ~ PHP7 vs HHVM vs PHP5.6
Kengyu Nakamura
?
PDF
翱厂厂で楽に作る骋辞言语クライアントツール
Tano Makoto
?
PDF
贵颈苍迟别肠丑研究所『2016年振り返り』
Toshio Taki
?
PPTX
Why choose Hack/HHVM over PHP7
Yuji Otani
?
PPTX
笔贬笔バージョン别応答速度比较
Takayuki Saito
?
PDF
安全な笔贬笔アプリケーションの作り方2013
Hiroshi Tokumaru
?
PPTX
惭补谤颈补顿叠+骋补濒别谤补颁濒耻蝉迟别谤の运用事例(惭测厂蚕尝勉强会2016-01-28)
Yuji Otani
?
PDF
[Azure Deep Dive] APIエコノミーに向けて ~Azure API ManagementによるAPIの公開と管理~ (2016/12/16)
Naoki (Neo) SATO
?
PPTX
セキュアコーディング方法论再构筑の试み
Hiroshi Tokumaru
?
PPTX
Neo4j の「データ操作プログラミング」から 「ビジュアライズ」まで
Keiichiro Seida
?
PPTX
「技术のインテリジェンスを创る」をどうやって実现するか
Yuji Otani
?
PDF
figo at API Days 2016 in Paris
Lars Markull
?
PDF
础奥厂マネージドサービスをフル活用したヘルスケア滨辞罢プラットフォーム
Hiroki Takeda
?
PDF
Memcache basics on google app engine
Ido Green
?
PDF
惭测厂蚕尝アンチパターン
yoku0825
?
PDF
认定スクラムマスター研修に行ってきました
Hajime Yanagawa
?
PDF
OAuth2.0によるWeb APIの保護
Naohiro Fujie
?
PDF
Presto - Hadoop Conference Japan 2014
Sadayuki Furuhashi
?
PDF
170311 JAWS days 2017 fintech
Toshihide Atsumi
?
PDF
Introducing Ballerina
WSO2
?
超高速WordPress ~ PHP7 vs HHVM vs PHP5.6
Kengyu Nakamura
?
翱厂厂で楽に作る骋辞言语クライアントツール
Tano Makoto
?
贵颈苍迟别肠丑研究所『2016年振り返り』
Toshio Taki
?
Why choose Hack/HHVM over PHP7
Yuji Otani
?
笔贬笔バージョン别応答速度比较
Takayuki Saito
?
安全な笔贬笔アプリケーションの作り方2013
Hiroshi Tokumaru
?
惭补谤颈补顿叠+骋补濒别谤补颁濒耻蝉迟别谤の运用事例(惭测厂蚕尝勉强会2016-01-28)
Yuji Otani
?
[Azure Deep Dive] APIエコノミーに向けて ~Azure API ManagementによるAPIの公開と管理~ (2016/12/16)
Naoki (Neo) SATO
?
セキュアコーディング方法论再构筑の试み
Hiroshi Tokumaru
?
Neo4j の「データ操作プログラミング」から 「ビジュアライズ」まで
Keiichiro Seida
?
「技术のインテリジェンスを创る」をどうやって実现するか
Yuji Otani
?
figo at API Days 2016 in Paris
Lars Markull
?
础奥厂マネージドサービスをフル活用したヘルスケア滨辞罢プラットフォーム
Hiroki Takeda
?
Memcache basics on google app engine
Ido Green
?
惭测厂蚕尝アンチパターン
yoku0825
?
认定スクラムマスター研修に行ってきました
Hajime Yanagawa
?
OAuth2.0によるWeb APIの保護
Naohiro Fujie
?
Presto - Hadoop Conference Japan 2014
Sadayuki Furuhashi
?
170311 JAWS days 2017 fintech
Toshihide Atsumi
?
Introducing Ballerina
WSO2
?
Ad
Similar to HHVM on CentOS6 本番運用のうまみとつらみ
(11)
PDF
Drupal on vagrant-aws
Tomoki Hasegawa
?
PDF
PHP7を実際に動かしてみた@第96回PHP勉強会 #phpstudy
Hikari Fukasawa
?
PDF
HHVM Hack
Masaaki Yonebayashi
?
PDF
贬贬痴惭/贬补肠办を本番投入した话
Kenjiro Kubota
?
PDF
【dots. IT勉強会】開発環境のDocker化
Yuki Kanazawa
?
PPTX
LinAction Theme Docker
cyberblack28 Ichikawa
?
PDF
笔贬笔カンファレンス2014の恳亲会飞び込み尝罢资料
Junichi Ishida
?
PPTX
Docker入門~word press環境を作ってみる ハンズオン編 ver1.4~ pulic
cyberblack28 Ichikawa
?
PDF
New configuration of Erogamescape
hiroin0
?
PDF
コンテナ情报交换会2
Masahide Yamamoto
?
PDF
Introducing hhvm hack-async
Kenjiro Kubota
?
Drupal on vagrant-aws
Tomoki Hasegawa
?
PHP7を実際に動かしてみた@第96回PHP勉強会 #phpstudy
Hikari Fukasawa
?
HHVM Hack
Masaaki Yonebayashi
?
贬贬痴惭/贬补肠办を本番投入した话
Kenjiro Kubota
?
【dots. IT勉強会】開発環境のDocker化
Yuki Kanazawa
?
LinAction Theme Docker
cyberblack28 Ichikawa
?
笔贬笔カンファレンス2014の恳亲会飞び込み尝罢资料
Junichi Ishida
?
Docker入門~word press環境を作ってみる ハンズオン編 ver1.4~ pulic
cyberblack28 Ichikawa
?
New configuration of Erogamescape
hiroin0
?
コンテナ情报交换会2
Masahide Yamamoto
?
Introducing hhvm hack-async
Kenjiro Kubota
?
Ad
Recently uploaded
(6)
PPTX
[Liberaware] Engineer Summer Internship.pptx
koyamakohei
?
PDF
React Native vs React Lynx (React Native Meetup #22)
Taiju Muto
?
PDF
【础滨罢搁滨翱厂】人惫蝉生成础滨でジェスチャーゲームを础滨罢滨搁翱厂を使ってしてみた
ueda0116
?
PDF
AWS BedrockによるIoT実装例紹介とAI進化の展望@AWS Summit ExecLeaders Scale Session
Osaka University
?
PDF
フィシ?カル础滨时代のセキュリティ:ロホ?ティクスと础滨セキュリティの融合のあり方
Osaka University
?
PDF
音学シンポジウム2025 招待讲演 远隔会话音声认识のための音声强调フロントエント?:概要と我々の取り组み
Tsubasa Ochiai
?
[Liberaware] Engineer Summer Internship.pptx
koyamakohei
?
React Native vs React Lynx (React Native Meetup #22)
Taiju Muto
?
【础滨罢搁滨翱厂】人惫蝉生成础滨でジェスチャーゲームを础滨罢滨搁翱厂を使ってしてみた
ueda0116
?
AWS BedrockによるIoT実装例紹介とAI進化の展望@AWS Summit ExecLeaders Scale Session
Osaka University
?
フィシ?カル础滨时代のセキュリティ:ロホ?ティクスと础滨セキュリティの融合のあり方
Osaka University
?
音学シンポジウム2025 招待讲演 远隔会话音声认识のための音声强调フロントエント?:概要と我々の取り组み
Tsubasa Ochiai
?
HHVM on CentOS6 本番運用のうまみとつらみ
1.
HHVM on CentOS6 本番運用の うまみとつらみ
2.
HHVM処理系の構築?運用に関する話です Hack言語は出てきません...
3.
自己紹介 ? 桑折 慧(KORI
Kei) ? @2k0ri ? 株式会社オークファン 新卒2年目 ? インフラ?運用、DevOps(1年半) ? 分析基盤開発に異動(4ヶ月目)
4.
HHVM導入の経緯 ? 先輩マネージャー「HHVMにしたら超早くなった」 ? Ubuntu+HHVMにレガシーシステムを引っ越しただけで チューニングが完了した ?
リビルドプロジェクトが立ち上がる ? Ubuntu換装はハードルが高いが HHVMへの換装はワンチャンあるのでは...?
5.
導入サービス aucfan.com
6.
1. スマートフォン版 2. PC版の一部ページ(落札相場検索、商品詳細) ?
CentOS 6.7, nginx, HHVM 3.5.0 ? FuelPHP 1.7.2 3. オウンドメディア(オクトピ) ? Wordpress それぞれが単独のアプリケーションとして稼働 最上流のnginxでURL/UAを元にリバースプロキシ
7.
インストールまで ? FB社の公式パッケージ提供はdpkg形式のみ ? CentOS6向けのrpmは下記の野良リポジトリがある ?
hop5(HHVM 3.0.1) ? gleez(HHVM 3.5.0)
8.
インストールまで ? gleezのお粗末なところをchefで吸収 ? mysql周辺の2バージョンにまたがる依存に追随 ?
remiから消失している依存パッケージを別途調達 ? initスクリプトを修正 chefコード片/.iniのgist: https://git.io/vzWOO
9.
開発機への工夫 ? 言語はPHPのまま、処理系のみをHHVMに移行する計画 ? 開発機(Vagrant)にはPHP5.6(php-fpm)とHHVMを両方構築 ?
バーチャルホストで別のfastcgiソケットに着信 ? 処理系固有のバグを踏んでもすぐに戻れるように http://php.dev.vagrant.aucfan.com/... http://hhvm.dev.vagrant.aucfan.com/...
10.
pros うまみ
11.
早い 2021ms -> 907ms 611ms
-> 354ms 230ms -> 100ms
12.
PHPコードに手を加える必要がない 開発リソースを使わず、インフラのみで高速化できる いざとなれば一手戻れる(Hackに移行しない限り)
13.
ピーク時LAが2/3ほどに →1台での同時リクエスト数がアップ →コスト減
14.
cons つらみ
15.
Xdebug対応が不十分 ? xdebug.オプションはある ? が、3.5.0とPHPStormでは動作せず すごいレアケースでパーサの挙動が違った <?php//echo
"sample" ;?> ? ↑ PHP works, HHVM returns syntax error ? PHPのやわらかさに改めて驚かされる
16.
ログが滅多に出てこない ? PHPより頻繁に画面が真っ白なまま ? hhvm.log.level=Verboseでもエラーログが無言のケースが 多々ある ?
今でも极稀に原因不明のスタックが起きる
17.
memcachedを使うとhphp_invoke(500) ? 原因不明のセグメンテーション違反 ? HHVMアップデートの道は閉ざされているので FuelのCacheドライバを変更 ?
memcached → Redis ? OS/バージョン固有のバグであって欲しい ? FB社はmemcachedヘビーユーザだし...
18.
12回目のアクセスから500になる ? FuelPHP ×
php-pdo × HHVMで発生 ? FuelのDBドライバがJITにかけられた途端動かなくなった ? fuel/core/classes/database/connection.php L60付近 + // https://github.com/facebook/hhvm/issues/2011#issuecomment-58767200 + settype($name, 'string'); if ( ! $writable and ($readonly = Config::get('db.'.$name.'.readonly', false))) { ! isset(static::$_readonly[$name]) and static::$_readonly[$name] = Arr::get($readonly, array_rand($readonly));
19.
惜しいところ hhvm.repo.authoritative ? PHPファイル全部を事前(AOT)コンパイル、高速化するオプシ ョン ? FBのチューニングマニュアルにはコレで20%改善とある ?
FuelPHP1.7.2でやろうとするとセグメンテーション違反に ? 惜しい
20.
今后の方针
21.
結局... ? HHVMのメリットを最大限享受するにはCentOS6はやっぱり もったいない ? 最新バージョンを使えないのは脆弱性対策としても不安 ?
後述の理由もある ? →Ubuntu移設進行中
22.
いざとなれば一手戻れる(Hackに移行してなければ) HHVM -> PHP5.6の可能性 ?
運用ノウハウがネットに少ないのがやはり一番の不安材料 ? どうしようもないバグにぶつかった時に nginx1行で振り戻せる状態にしておく
23.
hhvm.php7.all ? HHVMのphp7シンタックス対応オプション(3.11.0~) ? コード?処理系両面でphp7化を視野に →HHVM
<-> PHP7ワンチャンあるのでは...?
24.
まとめ ? PHP on
HHVMは結構お得でした ? いざとなれば戻れる(PHP7以降も?) ? 情報は少ない、地雷は踏み抜かれる ? FuelPHPでなければもう少し楽かもしれません
25.
ご清聴ありがとうございました
Download