私は非常に一般的な意味でこれを求めています。クラウドプロバイダーとクラウドコンシューマーの両方の観点から。また、問題は特定の種類のアプリケーションに関するものではありません(実際の意図は、どのタイプのアプリケーション/ドメインがどのクラウドスラブに適合できるかを知ることです-SaaS PaaS IaaS)。
これまでの私の理解は:
IaaS:未加工のハードウェア(プロセッサ、ネットワーク、ストレージ)。
PaaS:OS、システムソフトウェア、開発フレームワーク、仮想マシン。
SaaS:ソフトウェアアプリケーション。
Stackoverflowerがクラウドコンピューティングの概念についての理解と経験を共有できればすばらしいと思います。
編集:わかりました、私はそれをより具体的な方法で置きます-
Amazon EC2:ハードウェアレイヤーを制御できません。ただし、OSイメージ、Devフレームワーク(.NET、J2EE、LAMP)、およびアプリケーションを選択して、EC2ハードウェアに配置できます。 Google App EngineまたはAzureで構築されたアプリケーションをEC2にデプロイできますか?
Google App Engine:ハードウェアとOSを制御できず、アプリケーションを構築するための特定のDev Frameworkを入手します。既存のJavaまたはPythonアプリケーションを取得して、それをGAEに移植できますか?またはその逆で、GAEで構築されたアプリケーションをGAEから取り出して、 WebsphereやWeblogicなどのアプリケーションサーバーに移植したか
Azure:ハードウェアとOSを制御できず、アプリケーションを構築するための特定のDev Frameworkを入手します。既存の.NETアプリケーションを取得してAzureに移植できますか?またはその逆で、Azureで構築されたアプリケーションをAzureから取り出して、Biztalkなどのアプリケーションサーバーに移植できますか?
良い質問!ご指摘のとおり、さまざまなオファリングはさまざまなカテゴリーに分類されます。
EC2はサービスとしてのインフラストラクチャです。 VMインスタンスを取得し、必要に応じてそれらを使用します。RackspaceCloud Serverはほぼ同じです。
Azure、App Engine、Salesforceはすべてサービスとしてのプラットフォームです。ただし、Azureでは、任意のバックグラウンドサービスを実行できますが、App Engineは、存続期間の短いリクエストハンドラータスクを中心にしています(ただし、タスクキューとスケジュールされたタスクもサポートしています)。私はSalesforceのサービスにそれほど精通していませんが、特定のニッチに特化していますが、いくつかの点でApp Engineに似ていると私は理解しています。
Software as a Serviceに該当するクラウド製品は、AmazonのSimple Storage ServiceやSimpleDBなどのインフラストラクチャ部分から、Fog CreekがホストするFogBugzなどの完全なアプリケーション、そしてもちろんStackExchangeまで、あらゆるものです。
一般的なルールとしては、オファリングのレベルが高いほど、実行する必要のある作業は少なくなりますが、より具体的になります。バグ追跡システムが必要な場合は、FogBugzを使用するのが明らかに最も簡単です。 App EngineまたはAzureの上に1つを構築すると作業が増えますが、汎用性が向上します。一方、EC2のようなraw VMの上に1つを構築すると、作業が増えます(実際にはかなり多くなります)が、さらに多くの汎用性が提供されます。私の一般的なアドバイスは、まだ要件を満たしている最高レベルのプラットフォームを選び、そこから構築することです。
これは素晴らしい質問です。私はAzureに部分的ですが、他の人との経験があるため、完全に開示します。
Azureが他の企業よりも優れていると思うのは、オンプレミスからクラウドへの迅速な移行です。例えば -
お役に立てば幸いです。
現在、私のクラウドエクスペリエンスはSalesforce.comに限定されています
標準的なビジネスオペレーションと自動化のために、アプリを非常に迅速に起動して実行できるようにする多数の機能を提供します。特に以下のメリットがあります。
プラットフォームはすべての問題を解決するわけではありません。
私はこのプラットフォームを使用して、原子力発電所をモデル化したり、次のTwitterを作成したりしません。
クラウドコンピューティングの主なポイントは、使用料を支払うことでコストを節約し、コンピューティングリソースの即時展開を可能にすることです。
コストは、純粋にxインスタンスあたり1時間あたりのセント額ではありません。コストには、保守、開発、管理などが含まれます。クラウドの大きな利点は、私の心では、お客様がコアビジネスコンピテンシーの範囲内にないものを管理する必要がないようにすることです。私が保険会社の場合、私の開発者に私の保険の問題に集中してもらい、私の請求、料金などのニーズを解決するのに役立ちます。電子メールサーバー、ファイルサーバー、ドキュメントリポジトリ、およびOSパッチの管理の問題への対処は避けたいです。 、サービスパックなど.
したがって、私の意見では、最大のメリットはSaaSおよびPaaSクラウドサービスから得られます。PaaSまたはSaaSに深刻な制限がある場合のみ、IaaSにアクセスする必要があります特定のニーズ(つまり、一連の独自のCOMコンポーネントをインストールする必要があり、Azureはそれらをサポートしていません)。
SaaSは、クライアントの基幹業務ではないが、ユーティリティのような商品タイプのアプリケーションに適しています。これらは、典型的なメッセージングシステム、ポータル、ドキュメントリポジトリ、電子メールシステム、CRM、ERP、経理などです。なぜ、十分にサポートされているサードパーティ製品をカスタマイズできる場合は、独自のものを書いてホイールを再発明するのでしょうか。
PaaSは、企業の主要なビジネスオファリングをサポートする基幹業務ソフトウェアに最適です。クライアントをOS管理に対処する必要がないように抽象化し、クライアントがビジネスシステム開発に集中できるようにします。
PaaS(Google App Engineとしましょう)のメリットを活用し、場合によっては必要に応じて、IaaSプロバイダー(Amazonなど)から仮想マシンを引き出していくつかの処理を行い、返送することで拡張することもできます。 Google App Engineへの出力。
このようにして、両方の長所を手に入れます。GAEでスケーラブルなアプリを迅速に開発し、Amazon仮想マシンから必要なプログラムを実行することで、いつでもアプリを拡張できます。
これは変化し続けており、Windows AzureもVMをサポートしているため、現在はIaaSプロバイダーでもあります。
では、より良い比較を行うために、1年間無料のAmazon EC2についてはどうでしょうか。これをチェックしてください。
http://www.buzzingup.com/2010/10/Amazon-announces-free-cloud-services-for-new-developers/