PHPの価値が相対的に落ちてJavaの価値があがっていく

2000年あたり、PHP4やJSP1.0が出たころ、PHPよりもJavaがよいと言っても、「Javaは動かせる安いサーバーがない」ということで、サーバーの確保が容易なPerlPHPが使われました。
Javaを使うには、一台まるごと借りれる割高なレンタルサーバーで、自力でTomcatなどをインストールする必要がありました。そういった状況はしばらく続き、「PHPならば安く借りれるサーバーがたくさんある」ということから、PHPがよく使われるようになりました。
PHPの普及初期では、サーバーの確保が容易なことがPHP採用の大きな理由のひとつだったと思います。


こういう状況は最近まで続いたけど、Amazon EC2のおかげで「Javaは動かせる安いサーバーがない」という問題は解決してきました。Amazon EC2を借りても自力でTomcatなどをインストールする問題がありましたが、HerokuやStaxなどAmazon EC2上で構築されてJavaが使えるようになっているサービスが提供されるようになりました。
とはいえ、HerokuやStaxのようなサービスはメジャーになったとは到底いえず、これをもってJavaが使いやすくなったとは言えません。


Javaが使いやすくなったと言えるのは、Google App Engine/Javaの登場によります。サーバーの準備という点では、PHPに比べてJavaが圧倒的に使いやすくなったと言っても過言ではありません。
無償でPHPを使えるサーバーはたくさんあります。けれども、果たして仕事として引き受けたサイトを動かすことができるサーバーがどれだけあるでしょうか?そういったサーバーを探し出すのにも非常に手間がかかります。
Google App Engineであれば、無償で使えるPHPサーバーとは比較にならない安心感があります。トラフィックやデータ量が増えればそのまま課金サービスを申し込めばいいというのも心理的に楽です。
Google App Engine/Javaの上でPHPをQuercusなどで動かせばいいかもしれないけど、データベースはBigTableでそのあたりはいまのところPHPネイティブ(?)には書けないのでJavaAPIを呼び出す必要があります。それだったらJavaでそのまま書いたほうが楽と思います。少なくとも調べ物をするためにJavaが読める必要はあります。


Google App EngineではBigTableによるプログラムが今までのRDBMSによるプログラムと違うので最初はコストがかかるかもしれません。けれども、Google App Engineの場合は、HTTPサーバーの設定やサーバー自体のセキュリティ、ネットワークの設定、バックアップなどを考える必要がありません。プログラムを組むこと、サービスを運用することだけを考えればいいのです。サーバー管理者という固定費が必要なくなります。


ただ、現状ではこのようなサービスをJavaで提供しているのはGoogleだけです。Google App EngineだけをもってPHPの価値が相対的に落ちたというのは難しいかもしれません。個人的には、政治的な理由がなければ全部Google App Engineでもいいんじゃないのかと思うのですが。
現状でGoogle App EngineのようなサービスをGoogle以外がやっていないのは、そのようなことが実現できるパッケージがないからです。Amazon EC2のようなサービスならば、VM Wareなどを使って提供できるような環境が整いつつあります。
とはいえ、実際にWebサービスのサーバーとして使いたいのはWebアプリケーションサーバーとデータベース、メールサーバーだけで、例えばFTPSSHなどは管理のために使っているにすぎません。そうすると、仮想マシン一台単位で借りるというのはオーバースペックになり、サーバーのお守りも大変です。
サーバー提供側も、仮想マシン単位で貸すよりも、Webアプリケーションサーバーと分散データベースとして貸すほうが、効率よくサーバーリソースを使えるはずです。また、効率よくサーバーリソースが使えるのであれば、価格も安くできます。
このように、サーバー提供側・利用側にメリットがあるので、数年単位でみれば、Google App Engine形態でのサービスを使いたい、提供したいという需要が増え、そのようなパッケージが開発され、実際にサービスが増えていくと思います。
そのとき、このようにサービスを動かせる環境というのは、VMで動き実行できる機能を細かく制限できるJavaしかありません。Pythonで提供できるのは、その開発もとであるGoogleくらいのものだと思います。


このようにして、Google App Engineタイプのクラウドホスティングが普及してくれば、PHPの価値は相対的に下がり、Javaの価値があがっていくのではないかと思います。