サービスとしてのプラットフォーム(PaaS)またはサービスとしてのアプリケーションプラットフォーム(aPaaS)またはプラットフォームベースのサービスは、アプリケーションの開発と起動に関連するインフラストラクチャの構築と維持の複雑さなしに、ユーザーがコンピューティングプラットフォームとアプリケーションのモジュールバンドルをプロビジョニング、インスタンス化、実行、管理し、開発者がそのようなソフトウェアバンドルを作成、開発、パッケージ化できるようにするクラウドコンピューティングサービスモデルです。[ 1 ] [ 2 ]
PaaS は次の 3 つの方法で提供できます。
最初の[ 5 ]パブリックPaaSは、キヤノンヨーロッパが所有するロンドンに拠点を置く企業Fotangoによって開始されたZimkiでした。2005年に開発され、 2006年3月にベータ版がリリースされ、2006年のEuroOSCONで一般公開されました。[ 6 ]
Zimkiは閉鎖時点で数千の開発者アカウントを保有していました。Platform as a Service(PaaS)の技術的実現可能性を実証した一方で、単一のプロバイダーに依存することの危険性を初めて示す例となりました。[ 7 ]この点は、CEO(Wardleyマップで知られるSimon Wardley氏)がOSCON 2007でZimkiのオープンソース化を中止し、当時はFramework as a Service(後にPaaSと呼ばれる)と呼ばれていたものの将来について議論し、オープンソースのリファレンスモデルに基づくプロバイダー市場の重要性を指摘した際に浮き彫りになりました。[ 8 ]
PaaSの本来の目的は、コード記述を簡素化し、インフラストラクチャと運用をPaaSプロバイダーが担うことでした。当初、すべてのPaaSはパブリッククラウド上にありました。多くの企業がすべてをパブリッククラウド上に置きたくなかったため、プライベートPaaSとハイブリッドPaaS(社内IT部門が管理)という選択肢が生まれました。[ 9 ]
PaaSは、開発者や企業がアプリケーションを作成、ホスト、展開するための環境を提供し、開発者をインフラストラクチャの複雑さ(サーバーやデータベースなどの要素のセットアップ、構成、管理)から解放します。PaaSはアプリの開発速度を向上させ、ユーザーがアプリケーション自体に集中できるようにします。PaaSでは、顧客がアプリケーションとデータを管理し、プロバイダー(パブリックPaaSの場合)またはIT部門(プライベートPaaSの場合)がランタイム、ミドルウェア、オペレーティングシステム、仮想化、サーバー、ストレージ、ネットワークを管理します。[ 3 ] [ 10 ]ベンダーが提供する開発ツールは、ユーザーのニーズに合わせてカスタマイズされます。[ 11 ]ユーザーはソフトウェアの保守を自分で行うことも、ベンダーに保守を依頼することもできます。[ 3 ]
PaaSサービスには、アプリケーション設計、アプリケーション開発、テスト、デプロイメントのための機能に加え、チームコラボレーション、ウェブサービス統合、マーシャリング、データベース統合、セキュリティ、スケーラビリティ、ストレージ、永続性、状態管理、アプリケーションのバージョン管理、アプリケーションインストルメンテーション、開発者コミュニティの促進といったサービスも含まれる場合があります。サービスエンジニアリングの側面に加えて、PaaSサービスには、監視、ワークフロー管理、検出、予約といったサービス管理のメカニズムも含まれています。[ 12 ] [ 13 ]
PaaS の主な利点は、複雑さが大幅に軽減された高レベルのプログラミングが可能になること、組み込み/自動増減インフラストラクチャ リソースがあるためアプリケーションの全体的な開発がより効率的になること、アプリケーションの保守と拡張が容易になることです。
ユーザーが挙げる様々なPaaSプロバイダーのデメリットとしては、大規模になると価格が上昇すること、[ 14 ]、運用機能の欠如、[ 15 ]、制御の低下、[ 15 ]、トラフィックルーティングシステムの難しさなどが挙げられます。[ 16 ]
PaaSには、パブリック、プライベート、ハイブリッドなどいくつかの種類があります。[ 9 ] PaaSはもともとパブリッククラウドサービス上のアプリケーションを対象としていましたが、その後、プライベートおよびハイブリッドのオプションも含まれるように拡張されました。[ 9 ]
パブリックPaaSは、サービスとしてのソフトウェア(SaaS)から派生したもので[ 17 ] 、クラウドコンピューティングにおいてはSaaSとサービスとしてのインフラストラクチャ(IaaS)の中間に位置します。 [ 1 ] SaaSはクラウドでホストされるソフトウェアであり、顧客のコンピュータ上には常駐せず、実行もされません。IaaSは、プロバイダーから調整可能なスケーラビリティを備えた仮想ハードウェアを提供します。[ 1 ] IaaSではサーバーはユーザーが管理しますが、PaaSではプロバイダーが管理します。[ 18 ]
プライベートPaaSは通常、企業のオンプレミスデータセンターまたはパブリッククラウドにダウンロードしてインストールできます。ソフトウェアが1台以上のマシンにインストールされると、プライベートPaaSはアプリケーションとデータベースのコンポーネントを単一のホスティングプラットフォームに統合します。[ 19 ]
ハイブリッド PaaS は通常、パブリック デプロイメントとプライベート デプロイメントの組み合わせで構成されるデプロイメントです。
コミュニケーション・プラットフォーム・アズ・ア・サービス(CPaaS)は、開発者がバックエンドのインフラストラクチャやインターフェースを構築することなく、独自のアプリケーションにリアルタイム通信機能(音声、ビデオ、メッセージング)を追加できるクラウドベースのプラットフォームです。[ 20 ]また、CPaaSとハードウェアおよびソフトウェアの仕様は、(電気)通信アプリケーションをサポートするために特別に設計されています。これらのアプリケーションとその使用法は、ジッタ、遅延、パケット損失の影響を非常に受けやすいです。ホステッドPBX、携帯電話ネットワーク、(ほぼリアルタイムの)アプリケーションは、通常、CPaaSプラットフォーム上に展開されます。
2012年に開始されたモバイルPaaS(mPaaS)は、モバイルアプリの設計者と開発者に開発機能を提供します。[ 21 ]ヤンキーグループは、mPaaSを2014年のテーマの1つとして挙げました。[ 22 ] [ 23 ]
PaaSプロバイダーには様々な種類があり、いずれもアプリケーションのホスティングとデプロイメント環境に加え、様々な統合サービスを提供しています。サービスによって拡張性とメンテナンス性は異なります。[ 24 ]開発者はアプリケーションを作成し、選択したソフトウェア言語をサポートするPaaSにアップロードすることで、そのアプリケーションをPaaS上で実行できます。[ 25 ]
英国政府は、各省庁に対し、パブリッククラウドソリューションを第一の選択肢として活用することを推奨しています。英国政府内ではPaaSが利用されていますが、政府内の技術コミュニティは、PaaSプロバイダーがサポートするソフトウェア、言語、インターフェースを制限する可能性があることを指摘しています。政府は2015年から2023年まで独自のGOV.UK PaaSサービスを運営していましたが、現在は廃止されています。[ 26 ]