初投稿ですよろしくオナシャス
ご精読に当たっての注意
・ブログ環境なので、音声解説とかありません
・なので、ゆっくり音声とかは流れることはないですし、そんなものは聞こえないはずです
・このブログが参考になったと思ったらいいねとかオナシャス
HHEM村と空目した人残念、HHVM村でしたの入門記事はぁじめるよぉー!
まずは、HHVMとは何かについてみていきましょう。
HHVM
HipHop Virtual Machine(ヒップホップ・バーチャル・マシン、HHVM) は、実行時コンパイラ(JIT)方式でPHPおよびHackといったプログラミング言語を実行する、仮想機械型の処理系である。HHVMで実行する場合、PHPやHackのコードは、JITコンパイルの過程でまず中間言語のHipHopバイトコード (HHBC) に変換され、さらに動的にx64の機械語へとコンパイル・最適化を行った上で実行される。これに対し、公式のPHP実装であるZend Engineでは、PHPのコードを中間表現に変換した上で、中間表現をそのまま実行している。HHVMはFacebook社が開発しており、Github上にあるソースコードはPHP LicenseとZend License(英語版)のもと公開されている。
これのことです。ヒップホップしか頭に入ってこないからなんのことかってなりますが、PHPのコンパイル環境(雑解釈)です。一般にPHPはインタプリタ言語だからコンパイルしないなんて言われていますが、実はやつは実行時にコンパイルしていたのだ。な、なんだってー。まあ、この辺りの深淵をのぞきたい場合はPHPでよく使われる実行エンジンであるZendEngineの仕組みなどをググるなりして調べてみよう。
今日はHHVM村タイトルで記事書いているのでHHVMの話をします。
HHVM公式
HHVM | HHVM
ということで、これを導入するとどうなるかというとPHPが書けるようになります。そして世間一般では高速PHP環境なんて言われています。どう高速になるかは僕、よぐわかんにゃい(調査不足)。その他のメリットとしてはPHP7とかHackとか言うイケイケな流行言語がいじれるようになるとかがあると思います。それ以外のパフォーマンスの話はよぐわかんにゃい(調査不足)。
早速使ってみるよ
ということで導入して「動いたーやったー」までをやっていきます。今回は久しぶりにMacから導入していくことにします。
Install参考
Installation: Mac
これでいけるらしいね。しれっとbrewとか言うコマンド使っているけど、使えなかったらHomebrew用意しよう。
brew tap hhvm/hhvm brew install hhvm
あ、ちなみに何でいつものようにWindowsでやらないかと言うと、Windowsでの導入について面倒くさいこと書かれていたからです。
Installation: Windows
導入できたら「はじめてのHHVM」の以下コマンドをうってサーバを用意します。
はじめてのHHVM
hhvm -m server -p 8080
<?php echo "Hello";
久しぶりにPHP書いたのでechoすらそらで書けなくなってて笑った。
これで以下にアクセスしてHelloの文字が出れば成功です。PHPが書けました。お疲れ様でした。
http://localhost:8080/hello.php
ちなみにphpinfo()
で環境を確認するとちゃんとHHVMで動かしていることがわかります。ようこそHHVM村へ。
あっそうだ(唐突)。せっかくなので……、皆様のためにぃ……。
新たに使えるようになった言語、Hackの動作確認もします。
先ほどのソースの一行目を、入力のしやすさを考慮して<?hh
に書き換えます。
<?hh echo "Hello";
これでもHelloが表示されます。これがHackだ。
Hackで何ができるかについては今後またいじっていくことにして、といった感じでHHVMが使えるようです。導入した感想ですが、パフォーマンスに関して調査不足のせいで何がいいのかさっぱりって感じになってしまいました。まあ、Hack動かしたくて導入しただけだし仕方ないね。
そう言うわけで以上で一切参考にならないHHVM記事を終了します。ご精読ありがとうございました。