uzullaがブログ

uzullaがブログです。

PHPのプロファイラであるZ-RayのPreview版を試しました

朝10時にデプロイといわれると「早朝作業だ…」と思ってしまう程度には昼夜逆転しておりますうずらです、おはようございます。

ということで、朝10時デプロイのためにおきるぞと意気込んでいたら朝8時に起きてしまい、暇なのでウェブをグルグルしていたらZ-RayのPreviewについて英語のニュースをみかけました。

http://devzone.zend.com/6721/z-ray-technology-preview-released/

Z-rayというのはZend Serverに組み込まれた統合的なプロファイラ&デバッガで、気にはなっていましたが、いまだ試したことはありませんでした。

http://www.zend.com/en/products/server/z-ray

なので、スッと閉じそうになったのですが「Z-Ray can now be installed on Mac. So if you’re running Homebrew or MAMP」とあり、「あれ、Z-rayってZend Serverの売りでしょ?Zend Serverときりはなされたの?」と気になって読んでみたら実際そうだったので試してみましたのが今回のエントリです。

一応、Zend Server

Zend Serverは敬虔なPHPerなら知ってるとおもいますが(?)、ZendがつくっているPHPのプロプラで有料で機能拡張版みたいなアレのことです。

プロプラエタリ、エンタープライズPHP実行環境だとおもえばよいのではないでしょうか。たとえばいまだ5.3をちゃんとサポートしたりとか、そういうやつです。

私は実行環境としてのZend Server自体にはそこまで興味はなかったんですが、ツールであるZ-rayについては気になっていました、しかし買うまでにはいたらず。

ただ、先日某カンファレンスで「AWSのイメージとして、時間貸しもしている」という話を聞き、その内試すか〜、とおもって結局ためさず今にいたります。

さておき、Z-Rayの話

Z-Rayはエンジン側に組み込む事で、アプリ側の改修無しにプロファイラ機能や、一部のデバッガ的な機能みたいなものがつかえるようになるものです。まあ、私としてはプロファイラ的な部分が気になる所でした。

まあ、色々機能があるっぽいので各自しらべてください、以下がヘルプです。

http://files.zend.com/help/Z-Ray/content/home.htm

前述の通り、有料のZend Serverがないと使えないものだったとおもうのですが、いつのまにか分離版があったようです。(検索すると結構前からか?)

http://www.zend.com/en/products/z-ray/z-ray-preview

いまはPreviewということなのか、メールアドレスなどをフォームにいれたらDLできました(adblockしてるとフォームが消える事がありますので注意)

では、試していきましょう!

インストール

Macサポート!」の記事がきっかけではありますが、とりあえず私はUbuntu14試しました。

インストール方法ですが、自動インストールがあったので超簡単です。まずは以下のURLのフォームを入力し、ファイルをDLします。

http://www.zend.com/en/products/z-ray/z-ray-preview

今回、Z-Ray_Linux.tar.gzだけDLしてきます。(install.shが勝手に本体をおとしてきてくれます)

以下がhistoryです。以下は、Vultrで試した手順なのでapacheからいれてますがまあどうこうないですね。ためしてませんが、ドキュメントをみるかぎりnginxでもうごかせるようです。

# apt-get install apache2 php5 php5-sqlite php5-curl php5-cli
# a2enmod rewrite
# php -v
# wget http://xxxxxxxx/Z-Ray_Linux.tar.gz
# tar xvzf Z-Ray_Linux.tar.gz
# ZRay-Installer/install.sh
# service apache2 restart
# vi /var/www/html/text.php …

install.shは最初に環境をしらべてくれるので、たりないモジュールがあれば指摘されます、適当にいれましょう。

また、実行時の画面出力を見る限りどうやらApacheの設定も書き換えますので(後述のコンパネのために)、動いてるサイトにいれる場合は注意しましょう(あるいは、手動でもインストールできるので、そちらでやりましょう)。

使い方

http://your.host.example.com/ZendServer/

にアクセスするとzrayのコントロールパネルを開く事ができます。

あるいは、適当なPHPが設置されたURLにアクセスすると、ブラウザ下部にバーがでているとおもいます。

やりましたね、インストール完了です!

どんなだったの?

以下ツイッターをぺたぺたはっただけで雑ですみませんが、感動しました。

こういう「面倒だし、ブラウザのバーでだしちまえ」というのはPHPの簡単便利的思想に実にマッチしていて、(時と場合にもよりますけど)実によいですね。

まとめ

どのメソッドがどれくらい時間かかっているか一目でわかるので大変便利、SQLも実行が全部みれて便利で最高!あとはコールグラフがでれば、大体事は済むのでは?

ちなみに、cliの実行もzrayコンパネに出力されるので確認する事が可能です。バッチ処理や一部分だけのベンチマークも確認できるって最高ですね。

ただ、残念ながらbuiltin serverではバーはでないようです…どうせなら出るようにしてくれないかな…そうしたら手元の開発がはかどるのにな〜〜。

こちらからは以上です。