SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

高速WordPress実行環境「KUSANAGI」を支えるサーバの技術

超高速WordPress仮想マシン「KUSANAGI」が搭載するPHP処理系とその導入方法

高速WordPress実行環境「KUSANAGI」を支えるサーバの技術(2)

  • X ポスト
  • このエントリーをはてなブックマークに追加

 本連載では、プライム・ストラテジー株式会社が開発、オープンソースライセンスで無償提供している超高速WordPress仮想マシン「KUSANAGI」(以下、KUSANAGI)を構成する、それぞれのミドルウェアや技術を解説していきます。第2回では、KUSANAGIが搭載するPHP処理系について、種類とそれぞれの導入方法、および性能について解説します。

  • X ポスト
  • このエントリーをはてなブックマークに追加

KUSANAGIが搭載するPHP処理系

 KUSANAGIには、汎用的な処理系であるPHP 5.6、および昨年12月にリリースされたPHPの最新バージョンとなるPHP 7、米フェイスブックが開発するPHP互換のHHVMの3種が搭載され、KUSANAGIの独自コマンドで処理系を瞬時に変更することができます。

 PHP 5.6は、KUSANAGI以外で動作していたコードの移行やPHP 7非対応などのプロダクトを動作させるための安定的な処理系です。

 PHP 7は、PHP 5系に比して大幅なパフォーマンス改善が図られていますが、リリース間もないこともあり、コードレベルの対応は、まだこれからという状況です。ただし、今後メインストリームとなっていくのは、まず間違いありません。

 HHVMは、KUSANAGIが搭載するPHP処理系では、最も高いパフォーマンスを発揮しますが、PHP互換を謳う独自の処理系となるため、信頼性の面では多少劣ります。

 KUSANAGIが複数のPHP処理系を搭載することにより、運用環境に応じて適した処理系を選択できるだけでなく、特定の処理系が動作しない場合に対する対応性の確保、別の処理系での検証の容易さを兼ね備え、高い利便性を実現しています。

 これらのKUSANAGIが搭載するPHP処理系を、前回作成したLAMP環境をベースに順次導入し、ベンチマークの計測を行います。

 なお、KUSANAGIのPHP 7、HHVMは、処理系が併存できるようKUSANAGI独自のリポジトリより提供されており、ここで紹介される導入方法とは異なります。

PHP 5.6の導入

 PHP 5.6は、PHP 5系の最終リリースバージョンとなり、2016年12月末までバグ改修などのサポートが行われ、それ以降は2018年の末までセキュリティ問題のみのサポートとなります。なお、CentOS 7で標準インストールされるPHP 5.4は、2015年9月に公式サポートを終了しており、CentOS 7/REHL7で提供されるPHP 5.4はRedHat社が独自サポートしているものになります。

 今回は、前回作成した標準LAMP環境に、PHP 5系の最新版のPHP 5.6をインストールします。

 PHP 5.6をインストールするために、Remiというサードパーティーのパッケージリポジトリを使用します。

 まず、yum updateコマンドでパッケージを最新の状態に更新しておきます。

[root@CodeZine-CentOS ~]# yum update -y

 以下のコマンドで、EPELレポジトリとremiレポジトリをインストールします。

[root@CodeZine-CentOS ~]# yum install epel-release http://rpms.famillecollet.com/enterprise/remi-release-7.rpm -y

 「Complete !」と出れば成功です。

 インストール前に、現在のPHPバージョンを確認します。5.4.16と表示されます。

[root@CodeZine-CentOS www]# php -v
PHP 5.4.16 (cli) (built: Jun 23 2015 21:17:27)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies

 次に、remiレポジトリからphp 5.6をインストールします。remiレポジトリは通常無効になっているため、--enablerepoオプションで有効にします。

 前回作成した標準LAMP環境には、すでにPHP 5.4がインストールされているため、PHP 5.6でアップデートインストールされます。

[root@CodeZine-CentOS ~]# yum --enablerepo=remi,remi-php56 install php php-common -y

 「Complete !」と出れば成功です。

 アップデート後のPHPバージョンを確認します。5.6.22になっています。

[root@CodeZine-CentOS www]# php -v
PHP 5.6.22 (cli) (built: May 26 2016 15:36:45) 
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies

 前回同様に、WordPressを対象にしたベンチマークをとります。ブラウザ(Firefox)でWordPressのトップページを表示させ、Firefoxのアドオン「FireBug」でページのロード時間を確認します。筆者の環境では176msでした。

 次にコンソールに戻り、abコマンドでベンチマークをとります。

[php@CodeZine-CentOS ~]$ ab -n 100 -c 10 http://localhost/

 筆者の環境では、1秒当たりの同時アクセス数は6.38となりました。

会員登録無料すると、続きをお読みいただけます

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

次のページ
PHPアクセラレータ「APCu」「OPCache」の導入

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
高速WordPress実行環境「KUSANAGI」を支えるサーバの技術連載記事一覧
この記事の著者

中村けん牛(プライム・ストラテジー株式会社)(ナカムラ ケンギュウ)

プライム・ストラテジー株式会社 代表取締役。 中学1年生で電波新聞社の『マイコンBASICマガジン』にプログラムを寄稿して以来、プログラミング歴30年。早稲田大学法学部を卒業後、野村證券に入社。公認会計士第二次試験合格。執筆監訳書籍に『WordPressの教科書』シリーズ(SBクリエイティブ)、『詳解 WordPress』『WordPressによるWebアプリケーション開発』(ともにオライリー・ジャパン)などがある。Tw...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

大曲仁(プライム・ストラテジー株式会社)(オオマガリ ヒトシ)

プライム・ストラテジー株式会社 執行役員CTO。 執行役員CTOとして技術のTOPを務め、超高速仮想マシン「KUSANAGI」の開発にも参加。技術書の執筆や登壇実績も多数。WordPressでは、PS Auto Sitemap ほか、開発プラグインをWordPress.ORGの公式ディレクトリで公開。WordCamp Yokohama 2010 実行委員長、WordPress日本語フォーラム世話役などコミュニティでも活...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

宮﨑悟(プライム・ストラテジー株式会社)(ミヤザキ サトル)

プライム・ストラテジー株式会社 チーフエンジニア。 国立函館高専を卒業後、現在のNEC情報システムズに入社。UNIX・Windowsアプリケーション開発、Solaris/Linuxでのシステム構築に20年以上従事した。SolarisとLinuxを専門とし、OSおよび仮想化技術を得意とする。日本OpenSolarisユーザグループのメンバとして、OSCなど勉強会での登壇多数。Twitter: @s-miyaza Facebook: satoru.miyazaki.31 Slideshare: http://www.slideshare.net/satorumiyazaki<KUSANAGI開発チーム> プライム・ストラテジー株式会社超高速WordPress仮想マシンKUSANAGIの開発とWordPressマネージドサーバホスティングのサービス開発を担当するチームです。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/9456 2016/06/17 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング