云计算和分布式计算的区别?

我想知道关于云计算和分布式计算的差异。 我读了一篇关于云计算的文章,感觉到云计算和分布式计算之间有某种联系,所以想问一下技术之间的区别。

另外,如果有人能指向我的云计算的有用资源,它将不胜感激。

谢谢

在我看来,云计算的定义是,基于云的服务和软件的底层计算资源(存储,处理器,RAM,负载平衡器等)完全从软件/服务的消费者中抽象出来。 这意味着基于云的资源的供应商正在为计算环境的性能/可靠性/可扩展性负责。

从应用程序开发人员的angular度来看,这可能是一个巨大的优势,因为采购,维护,调优,监控和扩展硬件以满足增长需求既困难又昂贵。

对于较小的独立软件开发商来说,云计算提供了无需任何资本支出即可对原型,testing和部署软件的能力。

对于大型应用程序来说,好处通常是无限可扩展性,IT /应用程序托pipe职责的外包,以及即时访问新服务器/存储/随需应变。 通常,云提供商将提供冗余性,可靠性和安全性,除了最大的内部IT商店之外,所有这一切都无法实现。

应用程序开发人员的主要缺点是失去控制。 不仅外部硬件被托pipe在云环境中,而且被抽象出来,所以如果你的应用程序需要硬件的直接控制,那么你倒霉了。 而且您需要信任云提供商。 他们都提供99.9%的重复时间和SLA的,但我怀疑这些数据是真正实现的。 但是你必须问自己,我能做得更好吗? 答案往往不是。 但是硬件的控制并不是唯一的控制失败 – 与基于云的系统的集成也可能比内部或自我pipe理的软件更困难,原因很明显。 然而,在我看来,这个障碍正在消失,因为新技术和强大的API消除了在局域网/广域网之外运行应用程序时产生的许多集成困难。

另一个缺点可能是性能。 在本地局域网上运行一个应用程序可能比从云端运行为本地用户提供更快捷的体验。 但是,如果你的受众是分布式的,那么这个好处可能只适用于你的应用程序的一部分用户。

如前所述,分布式计算只是计算两台或多台计算机之间的计算。 根据定义,云计算是分布式计算,而是一种专门的forms。

这是 David Chappell的一篇很好的白皮书 。 这是微软赞助的论文,所以它是以微软云平台(Azure)的forms提出的,但是其基本原理是非常普遍的,David Chappell总是很容易阅读。

首先让我们说,我们在100%基于云的环境中运行重要的金融服务产品。

云计算并不是那么明确的(就像任何stream行词,每个人都想以某种方式用最新的stream行词来标记他们现有的产品)。

在我看来,云计算的关键是我可以将计算资源(CPU,内存等)视为商品而不是资本。

那是什么意思?

传统上,如果我想为我的组织增加一些计算能力,我需要出去购买更多的计算机,设置它们并维护它们。 云计算(Eric J.的定义)让我可以在需要的时候获得额外的计算能力,然后在我不需要的时候释放它。 我们提供销售税计算服务。 在圣诞节前夕,我们需要比一年中其他时间更多的计算能力。 我们的云环境让我可以在几秒钟内添加资源,然后在不需要它们的时候快速释放它们。 我们的一个大客户有时有一个小时的超级销售。 我可以为那个小时添加额外的处理能力然后在完成时释放它。

我们在云计算基础架构之上提供的解决scheme是软件即服务(SaaS)。 在我看来,像GMail这样的东西就是SaaS,而不是云计算。

那么这与分布式计算相比如何呢?

分布式计算只是意味着我分解了一个问题,以便可以同时处理大量的计算机。 伯克利大学的BOINC项目就是一个很好的例子(请考虑注册)。 他们在志愿者提供的所有电脑上分发科研项目。

参与BOINC和其他分布式项目的计算机可以是人们的笔记本电脑,台式机,服务器。 它们可以安装在我的办公室,从ISP租用的虚拟服务器,或者是“云”的一部分的虚拟服务器。 计算机来自哪里并不重要。 如果我可以在计算机上安装分布式计算软件,它可以成为分布式解决scheme的一部分。

分布式计算涉及将较大的问题分成更小的切片,并使多个联网的计算机处理切片。

云计算通常是指通过互联网提供服务。 这项服务几乎可以说是任何事情,从通过networking访问的商业软件到非现场存储或计算资源。

编辑:正如我下面的海报注意到的,这通常是这些服务的营销术语。

分布式计算是多台计算机参与解决/计算任务的地方。 像Folding @ Home一样 。

云计算是关于互联网服务的数据(文件,图片等)。 我猜GMail和Google Docs构成了一种云计算。

请记住, 云计算这个术语已经成为一个营销术语 ,几乎代表了任何东西。 对于编码员来说,这个术语是指分布式的存储和检索名称/值对的方式。 着名的例子包括BigTable (你很可能从Google App Engine中访问)和EC2 。