• 会員限定
  • 2015/11/13 掲載

実行速度は2倍以上? PHPの生みの親が語る、10年ぶりのメジャーバージョンアップ

Rasmus Lerdorf氏が語る(前編)

  • icon-mail
  • icon-print
  • icon-hatena
  • icon-line
  • icon-close-snsbtns
会員になると、いいね!でマイページに保存できます。
WordpressやFacebookなど、Webのさまざまなサービスで使われているPHP言語。約10年ぶりのメジャーバージョンアップとなる「PHP 7」がもうすぐ登場予定です。PHP 7では互換性を維持しつつ、従来のPHP 5と比べて2倍以上の性能向上やメモリ使用量を低減するなど、大きな改善が実現されます。
 そのPHPの生みの親であるRasmus Lerdorf氏が来日し、10月3日に都内で行われた「PHPカンファレンス2015」の基調講演「SPEEDING UP THE WEB WITH PHP 7」においてPHP 7の新機能や性能について詳しく解説しました。

 その内容をダイジェストで紹介しましょう。

SPEEDING UP THE WEB WITH PHP 7

 PHPの生みの親、Rasmus Lerdorf氏。

photo

 2015年6月で、PHPがリリースされて20年になりました。これが1995年6月の最初の発表なのですが、当時のWebにはいろんな問題がありました。それをPHPで解決しようとしたわけです。

photo

 スクリプト言語を作ったというよりも、あくまで問題解決をしようとした結果なのです。 簡単にフォームが作れる、そういったものがPHPでした。

 私としてはうまくできていると思っていたのですが、当時はだれも気にかけてくれませんでした。

 やがて、私が意図したのとは全く違うやり方で使われ始めました。タグの中にすべてのビジネスロジックを書いていく、という使われ方です。

 そして20年が過ぎ、たくさんの改善を含むPHP 7が出せるようになりました。実際に世界中で使われているPHPアプリケーションの性能が2倍になるのが主な特長です。

キャッシュの保存と抽象構文木

photo

 Persistent Secondary File-based Cacheの採用で、これまで共有メモリにあったキャッシュをディスクにも保存するようにしたため、PHPアプリケーションをリスタートしてもキャッシュの内容がすぐにメモリに展開され、すぐ高速に動くようになります。

photo

 リコンパイルの速度は同等ですが、共有メモリに展開するのは10倍速くなり、ディスクからコンパイル済みのコードを持ってくるのと比べても4倍速くなります。

 もう1つの新しい機能がAbstract Syntax Tree。抽象構文木。これが私のいちばんのお気に入りです。

 各エレメントがシンタックスツリーに入る。このツリーをパースして間違いを探していくようなユーティリティを書くことができます。

 下が私が書いてみたスタティックアナライザ。引数が間違っているというのを見つけています。

photo

【次ページ】 Return Types、Scalar、Null Coalesce Operatorなど
関連タグ タグをフォローすると最新情報が表示されます
あなたの投稿

    PR

    PR

    PR

処理に失敗しました

人気のタグ

投稿したコメントを
削除しますか?

あなたの投稿コメント編集

機能制限のお知らせ

現在、コメントの違反報告があったため一部機能が利用できなくなっています。

そのため、この機能はご利用いただけません。
詳しくはこちらにお問い合わせください。

通報

このコメントについて、
問題の詳細をお知らせください。

ビジネス+ITルール違反についてはこちらをご覧ください。

通報

報告が完了しました

コメントを投稿することにより自身の基本情報
本メディアサイトに公開されます

必要な会員情報が不足しています。

必要な会員情報をすべてご登録いただくまでは、以下のサービスがご利用いただけません。

  • 記事閲覧数の制限なし

  • [お気に入り]ボタンでの記事取り置き

  • タグフォロー

  • おすすめコンテンツの表示

詳細情報を入力して
会員限定機能を使いこなしましょう!

詳細はこちら 詳細情報の入力へ進む
報告が完了しました

」さんのブロックを解除しますか?

ブロックを解除するとお互いにフォローすることができるようになります。

ブロック

さんはあなたをフォローしたりあなたのコメントにいいねできなくなります。また、さんからの通知は表示されなくなります。

さんをブロックしますか?

ブロック

ブロックが完了しました

ブロック解除

ブロック解除が完了しました

機能制限のお知らせ

現在、コメントの違反報告があったため一部機能が利用できなくなっています。

そのため、この機能はご利用いただけません。
詳しくはこちらにお問い合わせください。

ユーザーをフォローすることにより自身の基本情報
お相手に公開されます