“云计算”与“客户端-服务器”有何区别?


30

今天,他在观看一家新的“云计算”公司首席执行官在金融电视节目中描述他的公司时说,“云计算优于老式的客户端-服务器计算”。

现在我很困惑。有人可以解释一下“云计算”相对于客户端-服务器的含义吗?

据我了解,云计算更多是一种网络服务模型,因此我不拥有或维护物理硬件。“云”是所有后端的东西。但是我仍然可能有一个与该“云”环境通信的应用程序。而且,如果我运行一个网站时,会呈现一个用户填写的表单,按页面上的一个按钮,然后返回由Web服务器生成的一些报告,这与“云”计算是一样的吗?并且您是否不将我的Web浏览器视为“客户端”?

请注意,我的问题是针对“客户端-服务器”的“云计算”概念。

抱歉,如果这不是该网站的适当问题;这是Stack世界中最接近的一个,这是我第一次来。我是个老手,从70年代后期的大型机时代开始编程。


这是一种简化,但我认为主要区别在于数据的存储位置。您的公司在客户端服务器中存储自己的数据。在云计算中,您的数据由云应用程序提供商存储。这具有优势,因为云应用程序用户最终几乎不需要维护,并且云应用程序开发人员可以更新其代码和数据库,而不必担心破坏某人的3个软件修订版。当然,缺点是应用程序用户将其数据存储在其他人的存储器上。
Dunk

3
简而言之,可以说Client-Server是昨天的炒作,而The Cloud是当前的炒作。:-)
JensG

客户端服务器用于云计算,而汇编代码用于Excel。
mouviciel

1
驾驶租赁汽车和驾驶自己拥有的汽车之间的区别。根本没有任何实际区别,只是您不必担心维修!
James Anderson

Answers:


28

严格来说,没有“云”。这与首席执行官在说什么无关。当然有互联网。有托管服务。有VPS。有内容传送系统。我们(技术人员)已经适应了该术语,以引用某些托管服务模型。但是消费媒体中的“云”在很大程度上是一个营销术语,松散地翻译为“互联网”。通常,这还意味着“我要按月向您收费”。

您的想法是正确的,“云”和“客户端服务器”这两个术语无关。将服务托管在“云中”(我总是想在使用该短语之后添加一个引人注目的“ dun-dun-daaaaaaaaa”)不会使客户端-服务器应用程序比客户端-服务器-y少。例如,“网络”主要使用客户端-服务器模型。Web浏览器是客户端。Web服务器就是服务器。Web服务器托管在“云中”并不会改变Web浏览器/ Web服务器关系是客户端服务器的事实。

因此,术语“客户端-服务器”定义了系统中两个实体之间的关系。实体实际托管的位置无关紧要。

基本上,您是对的。两者不可比。


至少有两种类型的冲突:技术上称为“蒸汽”或“烟雾”(因此称为“烟雾软件”)的高级云(管理离开并谈论),以及技术上称为服务器的低级云。命名为“雾”。对不起犬儒主义。
Emilio Garavaglia

21

“云计算”是一个笼统的术语,旨在做两件事:首先,将客户-服务器模型的所有可能用法抽象为一个术语,而不是像“文件服务器”,“数据库服务器”, “ Web服务器”,“应用程序服务器”等;第二,从硬件,拓扑,位置甚至所有权方面抽象服务器体系结构本身。

在今天肯定仍然普遍使用的传统客户端-服务器模型中,客户端连接到执行特定工作的服务器。该服务器可以托管数据库或一系列文件共享或网页。当客户端连接到该服务器时,将对两台计算机之间的通信和数据传输类型有一个隐含的理解。客户端或最终用户可能还了解服务器硬件的功能及其限制。客户端计算机与其服务器之间的这种相对“紧密的耦合”会给需要拆卸服务器进行维护的系统管理员带来麻烦。所有依赖于此服务器提供的资源的应用程序都必须指向另一台服务器,

在云模型中,硬件,拓扑,工作分工,甚至所涉及的实际计算机数量都在单个端点后抽象出来。可以比喻为现代的“ Web应用程序”,而不是更老的“网站”。我们可能会猜测幕后有一个应用程序服务器和一个数据库服务器,但是我们真的不必在意;Web服务器作为向“边缘”以外的用户提供完整应用程序的工作的一部分,提供了一个统一的端点,该端点允许以受控方式访问前门后面其他机器提供的所有数据和服务。

结果是,只有一个端点可以提供应用程序的功能,这才是该应用程序的客户消费者所关心的所有事情,而不是在何处获取其数据,在何处调用此类远程应用程序流程等;这意味着该云中服务提供商的管理员和架构师或多或少可以自由地更改此“云服务”的机器,拓扑和其他特定的实现细节,而无需使客户更明智。如果认为明智的话,Facebook可以使用不同的DBMS和所有新服务器从头开始重建整个数据存储系统,而且只要站点在过渡期间保持可用,就没有人会明智。实际上,Facebook只是这样做了很多次,


2
我非常欣赏GrandmasterB的答案所包含的“云”营销背后的冷嘲热讽,这才是真正的答案。
埃里克·金

我发现这是最好的答案!
2015年

5

“云计算”的关键部分是部署管理工具。

在“经典”部署中,可以为特定的应用程序订购一台特定的计算机,并进行相当固定的配置。

在云环境中,池中或多或少有标准化的硬件,还有一个API,可以通过某种形式的模板在其上创建和配置虚拟机。这样,可以根据需要轻松地替换,放大或缩小故障系统,并根据需要以自动方式分配硬件。

当然,适当的管理员之前也做过大部分工作,但是除了纯粹的营销之外,还有标准化API(Aamzons AWS API的基础),它也由Eucalyptus等工具提供“私有云”之类的工具和新兴的工具(例如puppet)。


因此,所有这些都与“营销”有关,而不是与实际技术有关,就像关于“大数据”的大呼小叫。
BellevueBob

您忘记了“营销”的一个重要方面。营销不仅是“广告”,还是“定价”。这就是云计算与客户端服务器计算的不同之处。它有时也称为效用计算,因为它的价格与效用(电,自来水)相似。当然,该模型也不是新模型,而是大型机计算的定价方式。
约尔格W¯¯米塔格

2

在“传统的”客户端-服务器体系结构中,您静态分配了资源(或者至少是这样分配的-我没有从云端开始的经验,因此如果我错了并且依赖虚假营销,请更正我)。该数据库服务器名为db.yourcompany.com,您的Web服务器与之通信。如果您想增加资源,则可以添加另一个专用的网络服务器并提供负载平衡等。

另一方面,云压力已被放在较低级别的抽象上,表示“服务器”是如何构造的。例如,您具有:

  • HAAS(硬件即服务)-客户端(公司)拥有一台托管计算机,可以在其上安装所需的任何OS。不同之处在于,他们不是“真正”拥有计算机,而是拥有场中的虚拟机。因为它是虚拟化的,所以他们不需要关心诸如计算能力之类的底层细节,无论是否使用机器,如何连接机器等,都可以支付账单。
  • PAAS(平台即服务)-更高的级别-您编写了以某种方式运行的应用程序。由于API足够通用,因此云提供商可以按需分配资源,因此,如果您的应用程序被加了斜线,您将为更多的资源付费,而不是遭受非恶意的DDOS攻击。
  • SAAS(软件即服务)-再高一层-您无需编写应用程序-您可以使用一个应用程序。您不在乎它的实现方式或使用的资源。它随时随地都可以使用。

请注意,尽管在大多数情况下,这意味着将实际服务外包给大型公司(例如Amazon或Google),但没有必要这样做-大型公司或大学部署自己的内部云可以更轻松地管理资源。这允许将资源添加到应用程序中,并根据需要添加其运行。如果新的内部启动成功,则无需担心服务器过载。但是,由于规模经济起着重要作用,因此通常只有在有特殊要求(例如,关于安全性)时才需要这样做。

从用户的角度来看,它是透明的,并且看起来没有客户端-服务器体系结构的感觉。使用简单的旧HTTP时,Web服务器可能位于“云中”。思想上的问题和解决方案的确可以追溯到50年代的大型机,目前与厚客户机PC形成鲜明对比的是它们的出现更多。

话虽如此,这也可能是给定句子中的一个时髦词汇,并声明公司是充满活力的,并在帮助员工的同时专注于其核心竞争力。


1

有人可以解释一下“云计算”相对于客户端-服务器的含义吗?

这取决于您的观点。对于企业而言,云计算是一件好事,因为它(通常)使您可以通过支持服务的计算机数量更加灵活。这种灵活性使您可以更快地做出响应,从而可以节省资金。企业还可以利用让云提供商进行备份,灾难恢复,物理安全以及所有其他他们不想处理的基础设施的优势。这通常可以节省成本并提高质量。

从消费者的角度来看,增加的连接质量和可靠性是好的。一些云提供商还帮助分发服务器,以帮助减少消费者的延迟。

对于程序员来说...几乎是客户端服务器编程,服务器很难到达,您有时需要使用一些专门的API。


-1

我认为可以说“云计算”和“客户端-服务器”非常相似。在我看来,云计算似乎更多地依赖于服务器,而不是“客户端-服务器”模型。从理论上讲,无论客户端连接如何,都会发生某些形式的云计算。仅在没有客户端通信的情况下在云上运行的应用程序的好处似乎并没有太大帮助,因此创建与该服务器的某种形式的客户端通信是有意义的。

从本质上讲,我认为它主要取决于大部分计算能力的执行位置。服务器在硬件和计算能力方面通常比标准用户计算机具有更好的规格,以便简单地管理许多客户端连接和并发操作以服务于那些连接。云计算通过将通常是客户端运行的代码移至服务器并使客户端尽可能“哑巴”来将其作为优势。因此需要较少的用户资源来处理相同类型的操作。

可能不是最佳答案,但这就是我的看法。


2
我不同意。Web使用客户端-服务器模型。Web浏览器是客户端。Web服务器就是服务器。Web服务器可能位于“云中”并不重要。这两个术语不可比较。
2013年

对我来说,它们之所以具有可比性,仅仅是因为我认为它们本质上是相同的,除了大部分的计算已完成。在我看来,“云计算”是相同的,只是它几乎不依赖客户端的计算支持。
StMotorSpark
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.