「クラウドコンピューティング」と「クライアント/サーバー」の違いは何ですか?


30

新しい「クラウドコンピューティング」企業のCEOが今日の財務テレビ番組で彼の会社について説明しているのを見て、彼は「クラウドコンピューティングは昔ながらのクライアントサーバーコンピューティングより優れている」と言った。

今、私は混乱しています。誰かがクライアントサーバーとは対照的に「クラウドコンピューティング」の意味を説明してもらえますか?

私が理解している限りでは、クラウドコンピューティングはネットワークサービスモデルに近いため、物理ハードウェアを所有したり保守したりすることはありません。「クラウド」はすべてバックエンドのものです。しかし、その「クラウド」環境と通信するアプリケーションがまだあるかもしれません。そして、Webサイトを実行すると、ユーザーが入力するフォームを提示し、ページ上のボタンを押して、Webサーバーによって生成されたレポートを返します。これは「クラウド」コンピューティングと同じではありませんか?そして、あなたは私のウェブブラウザを「クライアント」と考えないでしょうか?

私の質問は、「クライアントサーバー」に関する「クラウドコンピューティング」の概念に固有のものです。

これがこのサイトの不適切な質問である場合は申し訳ありません。Stackユニバースに最も近いものであり、今回が初めてです。私は70年代後半のメインフレーム時代からプログラミングをしている古いタイマーです。


これは単純化ですが、主な違いはデータの保存場所です。クライアントサーバーにあなたの会社は独自のデータを保存します。クラウドコンピューティングでは、データはクラウドアプリケーションプロバイダーによって保存されます。これには利点があります。これは、クラウドアプリケーションのユーザーがメンテナンスをほとんどまたはまったく必要とせず、クラウドアプリの開発者がソフトウェアの3つのリビジョンを壊す心配をせずにコードとデータベースを更新できるためです。もちろん、デメリットはアプリのユーザーが他の誰かのストレージにデータを保存することです。
ダンク

3
要するに、クライアントサーバーは昨日の誇大広告であると言えますが、クラウドは現在の誇大広告です。:-)
JensG

クライアントサーバーはクラウドコンピューティング向けであり、アセンブリコードはExcel向けです。
mouviciel

1
レンタカーを運転することとあなたが所有する車を運転することの違い。サービスについて心配する必要がないことを除いて、実際の違いはまったくありません!
ジェームズアンダーソン14

回答:


28

厳密に言えば、「クラウド」はありません。そのCEOが何を言っていたかという意味ではありません。もちろん、インターネットがあります。ホストされたサービスがあります。VPSがあります。コンテンツ配信システムがあります。私たち(技術者)は、特定のホストされたサービスモデルを参照する用語に適応しました。しかし、消費者メディアの「クラウド」は、主に「インターネット」として大まかに翻訳されたマーケティング用語です。たいていの場合、「月ごとに請求する」ことも意味します。

「クラウド」と「クライアントサーバー」という2つの用語は関連していないという考えは正しいです。「クラウド」でホストされているサービス(そのフレーズを使用した後、私は常に劇的な「dun-dun-daaaaaaa」を追加したい)が、クライアントサーバーアプリをクライアントサーバーyほど少なくするわけではありません。たとえば、「Web」は主にクライアントサーバーモデルを使用します。Webブラウザーはクライアントです。Webサーバーはサーバーです。Webサーバーが「クラウドで」ホストされていても、WebブラウザーとWebサーバーの関係がクライアント/サーバーであるという事実は変わりません。

したがって、クライアントサーバーという用語は、システム内の2つのエンティティ間の関係を定義します。エンティティが物理的にホストされている場所は関係ありません。

基本的に、あなたは正しいです。2つは比較できません。


少なくとも2種類のクラッドがあります。高レベルのクラウド-管理が去り話をする-技術的には「スチーム」または「スモーク」(そのため「スモークウェア」と呼ばれる)、および低レベルのクラウド-サーバーが技術的に配置される- 「霧」という名前。皮肉を言ってすみません。
エミリオガラヴァリア

21

「クラウドコンピューティング」は、2つのことを行うための包括的な用語です。まず、「ファイルサーバー」、「データベースサーバー」などのより具体的なユースケースとは対照的に、単一の用語の背後でクライアントサーバーモデルの考えられるすべての使用を抽象化するため、 「ウェブサーバー」、「アプリケーションサーバー」など。2つ目は、ハードウェア、トポロジ、場所、さらには所有権の面でサーバーアーキテクチャ自体を抽象化することです。

現在でも間違いなく一般的に使用されている従来のクライアントサーバーモデルでは、クライアントは特定のジョブを実行するサーバーに接続します。このサーバーは、データベース、一連のファイル共有、またはWebページをホストできます。クライアントがそのサーバーに接続すると、2台のコンピューター間で行われる通信とデータ送信のタイプが暗黙的に理解されます。サーバーのハードウェアの機能とその制限について、クライアントまたはエンドユーザーが理解している場合もあります。クライアントマシンとサーバー間のこの比較的「密な結合」は、メンテナンスのためにサーバーを停止する必要があるシステム管理者にとって問題を引き起こす可能性があります。このサーバーが提供するリソースに依存するすべてのアプリケーションは、別のサーバーを指す必要があります。

クラウドモデルでは、ハードウェア、トポロジ、分業、および関与する実際のマシンの数もすべて、単一のエンドポイントの背後で抽象化されます。アナロジーは、より静的な古い世代の「ウェブサイト」とは対照的に、現代の「ウェブアプリケーション」に引き付けることができます。背後にアプリケーションサーバーとDBサーバーがあると推測されるかもしれませんが、実際に気にする必要はありません。Webサーバーは、「エッジ」を超えて完全なアプリケーションをユーザーに提供するという仕事の一環として、このフロントドアの背後にある他のマシンが提供するすべてのデータとサービスへのアクセスを制御できる統合エンドポイントを提供します。

結果は、アプリケーションの機能を提供するために公開された単一のエンドポイントで、データを取得する場所、そのようなリモートアプリケーションプロセスを呼び出す代わりに、アプリケーションのクライアントコンシューマが気にしなければならないことです、など。つまり、このクラウド内のサービスプロバイダーの管理者とアーキテクトは、クライアントを気にすることなく、この「クラウドサービス」のマシン、トポロジ、およびその他の特定の実装の詳細を自由に変更できます。Facebookは、賢明だと思えば、別のDBMSとすべての新しいサーバーを使用してデータストレージシステム全体をゼロから再構築できます。また、移行中にサイトが利用可能な限り、誰も賢くありません。実際、Facebookはそれを何度も行いました。


2
GrandmasterBの答えに含まれる「クラウド」マーケティングの裏にある皮肉を高く評価する限り、これは本当の答えです。
エリックキング14

これがベストアンサーだと思いました!
アルサル

5

「クラウドコンピューティング」の重要な部分は、展開管理ツールです。

「クラシック」デプロイメントでは、特定のアプリケーション用に特定のマシンを注文し、構成をかなり修正しました。

クラウド環境では、プール内に多かれ少なかれ標準化されたハードウェアと、何らかの形式のテンプレートから仮想マシンを作成および構成するAPIがあります。そのため、障害のあるシステムは、必要に応じて簡単に交換、スケールアップ、スケールダウンでき、ハードウェアは必要に応じて自動的に割り当てられます。

もちろん、適切な管理者もその前のほとんどを行いましたが、純粋なマーケティングのほかに、標準化されたAPI(「プライベートクラウド」用のEucalyptusなどのツールによって提供されるAamzons AWS API)とツール(パペット)の基礎があります。


これの多くは、実際のテクノロジーではなく「マーケティング」に関するものであり、「ビッグデータ」に関するフーハのようなものです。
ベルビュー

「マーケティング」の大きな側面を忘れています。マーケティングは単なる「広告」ではなく、「価格設定」でもあります。そして、それがクラウドコンピューティングがクライアントサーバーコンピューティングと異なるところです。また、ユーティリティ(電気、水道水)と同様に価格設定されているため、ユーティリティコンピューティングの場合もあります。もちろん、そのモデルも新しいものではなく、メインフレームコンピューティングの価格設定方法です。
ヨルグWミットタグ

2

「従来の」クライアント/サーバーアーキテクチャでは、リソースが静的に割り当てられていました(または少なくともそのように表示されています-プレクラウド期間の経験はありませんので、間違っていて虚偽のマーケティングに依存している場合は修正してください)。データベースサーバーはdb.yourcompany.comと呼ばれ、Webサーバーはそれと通信しました。リソースを増やしたい場合は、別の専用Webサーバーを追加して、負荷分散などを提供することができます。

一方、クラウドでは、ストレスがより低いレベルの抽象化に置かれ、「サーバー」がどのように構築されるかを示しています。たとえば、次のものがあります。

  • HAAS(Hardware As A Service)-クライアント(会社)は、必要なOSをインストールできるホストされたコンピューターを取得します。違いは、彼らがコンピューターを「実際に」取得するのではなく、ファーム内の仮想マシンを取得することです。仮想化されているため、計算能力の量などの低レベルの詳細を気にする必要はなく、マシンが使用されているかどうか、接続方法などに関係なく請求書を支払う必要はありません。
  • PAAS(Platform As A Service)-より高いレベル-どこかで実行されるアプリケーションを作成します。APIは十分に一般的であるため、クラウドプロバイダーはオンデマンドでリソースを割り当てることができるため、アプリケーションがスラッシュドットになった場合、悪意のないDDOSに悩まされるのではなく、より多くのリソースを支払うことになります。
  • SAAS(Software As A Service)-さらに高いレベル-アプリケーションを作成するのではなく、使用します。どのように実装されるか、どのリソースを使用するかは気にしません。どこでもいつでも利用できます。

ほとんどの場合、実際のサービスは大企業(AmazonやGoogleなど)に外部委託されていることが暗示されていますが、大企業や大学は独自の内部クラウドを展開してリソースを簡単に管理できるようにする必要はありません。これにより、アプリケーションにリソースを追加して、必要に応じて実行を追加できます。新しい内部スタートアップが成功した場合、サーバーが過負荷になることを心配する必要はありません。ただし、規模の経済が果たす役割は、通常、特別な要件がある場合(セキュリティなど)にのみ行われます。

ユーザーの観点からは、透過的であり、クライアント/サーバーアーキテクチャの外観を備えています。Webサーバーは、単純な古いHTTPを使用しているときに「クラウド内」に存在する場合があります。アイデアの問題と解決策は、実際には50年代のメインフレームにまで遡りますが、現在は、シッククライアントPCとは対照的です。

それはまた与えられた文の流行語であるかもしれないと言って、会社がダイナミックで、彼らの従業員を可能にする間、彼らのコアコンピタンスに焦点を合わせると述べます。


1

誰かがクライアントサーバーとは対照的に「クラウドコンピューティング」の意味を説明してもらえますか?

それはあなたの視点次第です。企業にとって、クラウドコンピューティングは(通常)サービスをサポートするマシンの数により柔軟に対応できるため、優れています。この柔軟性により、応答性が向上し、費用を節約できます。企業は、クラウドプロバイダーにバックアップ、災害復旧、物理的セキュリティ、および処理したくないその他のインフラストラクチャのすべてを実行させることもできます。これは通常、節約と品質の向上につながります。

消費者の観点から見ると、接続品質と信頼性の向上は良好です。一部のクラウドプロバイダーは、消費者の待ち時間を短縮するためにサーバーを配布することも支援しています。

プログラマーにとっては、サーバーにアクセスするのが面倒で、特別なAPIを使用しなければならない場合がほとんどのクライアントサーバープログラミングです。


-1

「クラウドコンピューティング」と「クライアントサーバー」は非常に似ていると言ってもいいと思います。私の観点からは、クラウドコンピューティングは「クライアントサーバー」モデルよりもサーバーに依存しているようです。理論的には、クライアント接続に関係なく、クラウドコンピューティングのいくつかの形式が発生する可能性があります。クライアント通信なしでクラウド上でのみ実行されるアプリケーションの利点はあまり役に立たないため、そのサーバーへの何らかのクライアント通信を作成することは理にかなっています。

本質的には、ほとんどの場合、コンピューティングパワーの大部分がどこで実行されているかに依存すると思います。通常、サーバーは、多くのクライアント接続と同時操作を管理してそれらの接続を提供するために、ハードウェアと計算能力の点で標準ユーザーコンピューターよりも優れた仕様を持っています。クラウドコンピューティングは、通常はクライアント実行コードとなるものをサーバーに移動し、クライアントを可能な限り「ダム」にすることにより、これを利点として使用します。したがって、同じ種類の操作を処理するために必要なユーザーリソースが少なくなります。

最良の答えではないかもしれませんが、それは私がそれを見る方法です。


2
同意しません。Webはクライアントサーバーモデルを使用します。Webブラウザーはクライアントです。Webサーバーはサーバーです。Webサーバーが「クラウド内」に座っている可能性は無関係です。2つの用語は比較できません。
GrandmasterB

私にとっては、コンピューティングの大部分が行われていることを除いて、それらが本質的に同じであると考えているからです。私の頭の中の「クラウドコンピューティング」も同じですが、クライアントからのわずかな計算サポートに依存しています。
StMotorSpark
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.