Service)についての解説を行います。連載の最初にも書いた通り「クラウドコンピューティング」を大きく分けるとIaaS、PaaS、SaaSと大きく3つに分けられます。連載の最初で私はIaaSは「サーバ」や「回線」などのインフラを仮想的に提供するサービス、SaaSはソフトウェアを提供するサービス、PaaSは「開発環境」を提供するものと説明しました。「⁠開発環境を提供する」と一口に言っても人によっては色々な意味合いが出てきます。「開発環境を提供する」という事であれば、別にIaaSでもOSのインストールなどを行えば開発環境ができますし、1枚のWebページを公開するだけであればSaaS的なサービスでもWebサイトやブログを構築できるサービスはあります。PaaSによって、提供形態に違いはありますが、PaaSは一般的にはプログラムの実行環境を提供するものと言われています。あなたがMySQLとPHPで動くブログシステムを構築したいとします。これらの実行環境をIaaSで用意するには、まずはIaaSが用意する仮想サーバを借りて、OSを選択し、それをインストールして設定を行い、さらにPHPやMySQLをインストールし、設定を行う必要があります。IaaSなので物理サーバを用意する手間は省けますが、ブログを立ち上げるごとにこのような設定を行うのは非常に面倒です。一方のPaaSの場合は、サーバの選択やOSのインストール、また利用できるプログラミング言語の設定、さらにMySQLのようなデータベースも用意してくれます。これにより開発者はサーバの設定などを考えることなくブログラムの開発に集中できます。利用できるプログラミング言語など、PaaSサービスを提供している事業者にとって提供できるサービスには違いがあります。次は、代表的なPaaSをご紹介いたします。それぞれ、どのような特徴があるのか見てみましょう。Engine(=GAE)は、Googleが提供しているPaaSで、Java、Python、そしてGoogle社が作ったプログラミング言語GOが利用できます。GAEの上でホスティングできるアプリケーションは、特定のストレージ領域とページビューでは月間500万程度まで無料で利用できます。HerokuHerokuは複数の言語を利用できるPaaSベンダーです。クラウドコンピューティングの大手ベンダー「セールスフォース」が買収したことや、Rubyの作者である、まつもとゆきひろ氏がチーフアーキテクトとして参画していることでも有名です。Rails、Java、Node.jsなどの言語が利用でき、データベースとしてはPostgreSQLをサポートしています。dyno」の実行時間、またデータベースの容量によって課金されます。FluxFlexFluxFlexは日本人の開発者が作成したPaaS。Haskellなどをサポートしています。今までご紹介したPaaSに大きな特徴として、WordPressやmediawikiなどのアプリケーションや、phpcakeなどのフレームワークをインストールボタンをクリックするだけでインストールできます。githubへの連携や、Facebookなどのアカントからサインアップし利用できるなどの機能があります。Facebookのアカントがあれば、すぐにでも利用できるので、手軽にPaaS環境を利用してみたい方には良いと思います。DotCloudDotcloudは、さまざまな言語、データベースが利用できるPaaS環境です。cloudはPerl、Ruby、Java、Python、Node.jsなどの複数の言語が利用できるほか、データベースも代表的な物はほとんど使えます。cloudは複数の言語とデータベースが利用できますのでPaaSの仕様にこだわらず開発者がPaaSを利用できます。FoundryVMwareが提供しているPaaSです。Foundry」も提供しています。Force.comセールスフォース社が提供するPaaS環境。PaaSという言葉はセールスフォース社が提唱した言葉ですから、ある意味PaaSの元祖的な所もあるでしょう。Azureは、Microsoftが提供するPaaSです。Studioなどの従来のMicrosoft製品との親和性です。Azure」が利用できます。他社のPaaS/IaaSと異なり、Microsoftは自社のクラウド環境だけで完結せずにオンプレミスと連動にも注力しています。Serverとも連動して動くようになっております。AzureではPHPやPython、Rubyなどの言語も利用することが可能です。レンタルサーバとPaaSの違いここまで見てきたようにPaaSの特徴はサーバのハードウェアやOSを用意せずに、プログラム実行・開発環境やデータベースを提供するものとなります。プログラムの実行環境とデータベースの提供だけであれば、以前から「レンタルサーバ」サービスが提供されています。「レンタルサーバ」サービスは、サービスにもよりますが、PHP、Perl、Rubyなどのプログラム実行環境を提供していますし、MySQLなどのデータベースなども用意しています。これだけ見れば「レンタルサーバ」サービスとPaaSは同じようなものに思えます。確かにプログラムの実行環境とデータベースだけを見れば、両者は同じように思えますが、最大の違いはスケールアップ/アウトができるかどうかの違いです。現在のレンタルサーバはスペックや実行環境が固定されており、これらをスペックアップしたりスケールアウトするのは難しい状況です。そのため、突然のアクセス増加にはサーバが耐えられない場合があります。一方のPaaSは、サーバのスケールアップ/スケールアウトが容易にできます。IaaSと同様にはじめはスモールスタート、人気が出てきたらスケールアップ/スケールアウトをしてシステム全体を強化することもできます。Railsなどをサポートしている所はまだ少数です。一方のPaaSは、これらの開発者に好まれるプログラミング言語をサポートしており、より開発者向けのものになっています。Ltd.ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。