まず、「aaS」という言葉についてですが、これは「サービス」のことです。 もっと簡単に言うと、”クラウド “と呼ばれるものです。 このクラウドコンピューティングモデルは、最小限の労力で管理できるストレージ、サーバー、アプリケーション、サービスなどのコンピューティングリソースのプールに、オンデマンドでアクセスできるようにするものです。 Azureは、3つの主要なクラウドコンピューティングプラットフォームサービスを提供しています。
- SaaS – Software as a Service
- IaaS – Infrastructure as a Service
- PaaS – Platform as a Service
Find out how Sherweb can help your business grow by exploring our Partner Guide
3 つのサービスとも、企業が急成長に向けテクノロジーベースのサービスを取り入れているので大きな需要を持っていることがわかるでしょう。 これらのサービスは、費用対効果の高いビジネス・ソリューションを提供するために、互いに依存し合っています。 SaaS、PaaS、および IaaS は、インフラストラクチャとリソースが仮想化技術とビジネス サービスへのリモート アクセスを共有する、マルチテナンシー アーキテクチャを特徴としています。 コンピューティングパワーとインフラの要件に基づいて、Azure はリクエストを即座に許可し、データセンターのリソースはそれに応じて割り当てられます。
図 1 出典:日本経済新聞社。 Microsoft
Azure Platform-as-a-Service (PaaS)
Platform as a Service (PaaS) は、クラウド内の展開および開発環境で、シンプルなクラウドベースのアプリケーションから複雑でクラウド対応のアプリケーションまでを提供します。 PaaS は、構築、テスト、デプロイ、管理、および更新といった完全な Web アプリケーション ライフサイクルをサポートするように設計されています。
PaaS には、サーバー、ストレージ、ネットワーク、およびビジネス インテリジェンス サービス (BI) やデータベース管理システムなどのミドルウェア開発ツールの完全なインフラストラクチャが含まれています。 PaaS では、完全なプラットフォームが提供され、クライアントは、サーバーやそのオペレーティング システムのメンテナンスについて心配することなく、アプリケーションをホストすることができます。 ただし、PaaS サービスのユーザーは、開発したアプリケーションの実装を確認し、アプリケーションが受け取るトラフィックに応じて、アプリケーションを拡張するか縮小するかを決定する必要があります。 Microsoft
PaaS のバックボーンは仮想化技術を利用しており、仮想マシンはそれをホストする実際のハードウェアから独立しています。
Azure Cloud Services には、ソース コードや DLL などのアプリケーション ファイルと構成ファイルという 2 つの主要なコンポーネントがあります。 この 2 つが一緒になって、ワーカー ロールとウェブ ロールの組み合わせをスピンアップします。 クラウド サービスでは、Azure がユーザーに代わってオペレーティング システムのすべてのハードワークを処理するので、エンド ユーザー向けに高品質のアプリケーションを構築することに全力を注ぐことができます。 この結果、アプリケーションの公開エンドポイントが作成されます。これは通常 Web サイトの形式ですが、API または同様のものである可能性もあります。
Figure 3 Source: www. robertgreiner.com
Worker Role は Web Role と同時に実行し、アプリケーションの円滑な運用に必要な計算機能を実行します。 Webの役割はユーザーの入力を受け付け、後でWorkの役割によって処理されるアクションのためにキューに入れられます。 その後、Web Roleの生産性と応答性を向上させることができます。
Azure PaaS サービス
Azureは、複数のサービスタイプでカスタムアプリケーションや特定のユースケース用のビジネスロジックをホストするPlatform as a Serviceの5つの主要サービスを提供しています。 これらはセットアップが簡単で、さまざまなメリットを提供し、主要なメリットである 99.9% の時間を利用できます。
モバイル アプリ
モバイル アプリのバックエンドは、iOS、Android、Windows などのすべての主要モバイル OS 用の SDK を使用して簡単に Azure PaaS にホストすることができます。 オフライン同期というユニークな機能を備えているため、ユーザーはオフラインの状態でもアプリを使用でき、オンラインに戻るとデータを同期させることができます。 もう1つの大きな利点は、プッシュ通知の機能で、対象となるすべてのアプリケーション ユーザーにカスタム通知を送信できます。 ロジック アプリ
アプリはホストされていませんが、ビジネス プロセスを自動化するためのオーケストレーションされたビジネス ロジック アプリがあります。 これらは、事前に定義されたビジネス条件が満たされたときに、トリガーによって開始されます。
Functions
機能アプリは、同じアプリケーション内で複数のタスクを実行できます。 これらの機能アプリは、マイクロサービスや短期間しか実行しないバックグラウンドジョブなどの小規模なアプリケーションをホストします。
Web jobs
これらは、Webアプリまたはモバイルアプリのアプリサービス内で実行されるサービスの一部です。 これらは関数に似ていますが、それを設定するためのコーディングは必要ありません。
PaaSが使用される場所
PaaSは、ビジネス組織において以下のシナリオでよく見られます。
開発フレームワーク
PaaSによりアプリケーション開発者は、拡張性、マルチテナント、高可用性などのPaaSのビルド済みソフトウェアコンポーネントを使用してアプリケーションを作成でき、開発者が行うべきアプリケーション用のコーディング量を大幅に削減でき、開発ライフサイクルが著しく短くなります。
アナリティクス/ビジネス インテリジェンス (BI)
PaaSの追加のインテリジェンス ツールにより、企業はユーザーの行動データとアプリケーション データの両方をマイニングおよび分析し、結果を予測して製品の設計決定やビジネス決定を改善し、洞察やアプリケーションの使用パターンを分析して投資収益率を向上することができます。
Why use PaaS
PaaSはIaaSの上に構築されるので、IaaSで得られる利点や価値を提供しながら、ビジネス ツール、ミドルウェア、開発ツールのより多くの機能を提供します。
時間効率
PaaSが提供する開発ツールにより、開発者は、セキュリティ機能、ディレクトリサービス、検索オプションなど、プラットフォームの事前コーディングされたコンポーネントを開発アプリケーションに統合できるため、新しいアプリケーションのコーディングにかかる時間をさらに短縮することができるようになります。
アプリケーション ライフサイクル
PaaSは、構築、テスト、デプロイ、管理、および更新といった完全なWebアプリケーション ライフサイクルをサポートするように設計されているので、アプリケーション ライフサイクルを効率的に管理できます。
マルチプラットフォーム サポート
コンピュータやモバイル機器、ブラウザの複数のプラットフォーム向けにアプリケーションを開発できるので、アプリケーション開発がより簡単に、より速くできるようになりました。
地理的分散開発
開発環境はインターネット経由でアクセスできるので、さまざまな場所にいる複数の開発チームが共同でアプリケーションを開発することができます。 つまり、使用されたものに対してのみ課金されます。
Azure PaaSの対象者
一般に、Azure PaaSは次のような方に最適です。
- アプリケーションを市場に投入するまでの時間を大幅に短縮したい企業の開発チーム。
- 運用コストが高く、一連のアプリケーションの管理ニーズを軽減したい組織。
- 使用状況とチャージバックのための重要なサポート メトリクスを必要とする組織。
- ITに費やすコストを削減し、拡張性を高めながらデータベース要素やオペレーティングシステムの複雑さを軽減したい組織。
- 自社のサービス品質を向上させたい企業は、PaaSから大きな利益を得ることができます。