- 会員限定
- 2015/11/13 掲載
実行速度は2倍以上? PHPの生みの親が語る、10年ぶりのメジャーバージョンアップ
ITジャーナリスト/Publickeyブロガー。大学でUNIXを学び、株式会社アスキーに入社。データベースのテクニカルサポート、月刊アスキーNT編集部 副編集長などを経て1998年退社、フリーランスライターに。2000年、株式会社アットマーク・アイティ設立に参画、オンラインメディア部門の役員として2007年にIPOを実現、2008年に退社。再びフリーランスとして独立し、2009年にブログメディアPublickeyを開始。現在に至る。
その内容をダイジェストで紹介しましょう。
SPEEDING UP THE WEB WITH PHP 7
PHPの生みの親、Rasmus Lerdorf氏。2015年6月で、PHPがリリースされて20年になりました。これが1995年6月の最初の発表なのですが、当時のWebにはいろんな問題がありました。それをPHPで解決しようとしたわけです。
私としてはうまくできていると思っていたのですが、当時はだれも気にかけてくれませんでした。
やがて、私が意図したのとは全く違うやり方で使われ始めました。タグの中にすべてのビジネスロジックを書いていく、という使われ方です。
そして20年が過ぎ、たくさんの改善を含むPHP 7が出せるようになりました。実際に世界中で使われているPHPアプリケーションの性能が2倍になるのが主な特長です。
キャッシュの保存と抽象構文木
Persistent Secondary File-based Cacheの採用で、これまで共有メモリにあったキャッシュをディスクにも保存するようにしたため、PHPアプリケーションをリスタートしてもキャッシュの内容がすぐにメモリに展開され、すぐ高速に動くようになります。
リコンパイルの速度は同等ですが、共有メモリに展開するのは10倍速くなり、ディスクからコンパイル済みのコードを持ってくるのと比べても4倍速くなります。
もう1つの新しい機能がAbstract Syntax Tree。抽象構文木。これが私のいちばんのお気に入りです。
各エレメントがシンタックスツリーに入る。このツリーをパースして間違いを探していくようなユーティリティを書くことができます。
下が私が書いてみたスタティックアナライザ。引数が間違っているというのを見つけています。
【次ページ】 Return Types、Scalar、Null Coalesce Operatorなど
関連タグ
PR
PR
PR