PHP in Java - Quercus作戦

ローリスクでサービスを立ち上げて、軌道に乗ったときに「性能が成長に追いつかない」なんていう嬉しい悲鳴を上げる時を想定して、Quercusやってみる。

最初から専用サーバを用意できる層へのWebアプリ構築なら、ウチはJava(ときどきRuby)を使う方針です。しかしウチがターゲットにしている客層では、どうしてもロリポップでPHP、というスタートが多くなる。
ここで言うローリスクとは、主にサーバコストにおいての意味です。

PHPを使って小さく立ち上げたサービスが成長したとき、性能の観点から、「あ~Javaで作り直してぇ~」と思うときありますよね?
いきなりZendは高いし。。


 Quercus - PHPのJava実装(クエルクス?)

mod_phpと比較して4倍の性能が出るようです。
アプリケーションサーバはResinを選択するのが良さそうですが有償。
ただ、本当に4倍の性能がでるのなら、サーバ増設コストよりはかなりお得感がある。

TomcatとGlassFish(無償)でも、quercus.war(サイトの下のDownload)をデプロイして動作することは確認しました。
※機能制限があるかどうかは未調査

実行速度が上がるのはもちろん嬉しいですが、
Javaアプリケーションサーバならではのキャッシュやコネクションプール/トランザクションがワンパックで使えるのがとても大きい。
さらに、ボトルネックになっているコードだけJavaで書き直すとかも簡単にできそうです。

さらにさらに、それでも足りなくなってサーバ増設>クラスタリングなんていう輝かしい未来がくれば、Javaのスケールアウト力は絶大。

さらにさらにさらに、Google App Engine用のQuercusも公開されてる!クラウドにもノッちゃうかもっ。


夢みすぎたので現状に戻る。

PHPでのパフォーマンスチューニングだと、APCMemcacheとかでなんとかしていくのがテッパンだと思いますが、
「それでも限界、でもサーバコストが・・・」という微妙なときに、検討してみると良いのではないでしょうか。

実にウチのお客さま向けのソリューションのような気がしてきたので、ちょっと本気で検証する。まずは、武田ソフトが絶大な信頼を寄せる(が、全くヒットする気配もない)PHPフレームワーク、AkelosをTomcatにデプロイしてみよう。次回へ続く(はず、期待しないで)。


コメント

コメントしてください
お名前:
入力しなければ「匿名さん」。20字以内。

メール:
入力しても表示しません

URL:
入力すればリンクが貼れます


コメント: