云计算和分布式计算的区别? [关闭]
Posted
技术标签:
【中文标题】云计算和分布式计算的区别? [关闭]【英文标题】:Difference between cloud computing and distributed computing? [closed] 【发布时间】:2010-11-23 21:47:47 【问题描述】:我想了解云计算和分布式计算的区别。我读了一篇关于云计算的文章,感觉云计算和分布式计算之间存在某种关系,所以想问一下技术之间的区别。
另外,如果有人能指出我对云计算有用的资源,我将不胜感激。
谢谢
【问题讨论】:
这是互联网上服务的另一个流行词,可以触发硅谷 VC 的“下一件大事”反射,从而吸引一些本来可以花在新游艇上的钱。 肖恩的横幅广告是“Microsoft ... Cloud Power”。 【参考方案1】:在我看来,云计算的定义是基于云的服务和软件的底层计算资源(存储、处理器、RAM、负载平衡器等)完全从软件/服务的消费者那里抽象出来。这意味着基于云的资源供应商负责计算环境的性能/可靠性/可扩展性。
从应用程序开发人员的角度来看,这可能是一个巨大的优势,因为采购、维护、调整、监控和扩展硬件以满足增长需求既困难又昂贵。
对于较小的 ISV,云计算提供了原型、测试和部署软件的能力,而无需任何资本支出。
对于较大的应用程序,好处通常是无限的可扩展性,相当于外包 IT/应用程序托管责任,以及即时访问新服务器/存储/任何需要的东西。通常,云提供商会提供冗余、可靠性甚至安全级别,除了最大的内部 IT 商店之外,所有这些都无法以全部成本实现。
应用程序开发人员的主要缺点是失去控制。硬件不仅在外部托管在云环境中,而且是抽象的,因此如果您的应用程序需要直接控制硬件,那么您就不走运了。而且您需要信任云提供商。它们都提供 99.9% 的重复运行时间和 SLA,但我怀疑这些统计数据是否真的实现了。但你必须问自己,我能做得更好吗?答案往往是否定的。但对硬件的控制并不是唯一失去控制的地方——与基于云的系统集成也可能比内部部署或自我管理的软件更困难,原因很明显。然而,在我看来,随着新技术和强大的 API 消除了在 LAN/WAN 之外运行应用程序时产生的许多集成困难,这一障碍正在消失。
另一个缺点可能是性能。在本地 LAN 上运行应用程序可能会为本地用户提供比从云中运行更快速的体验。但是,如果您的受众是分布式的,那么这种优势可能只适用于您的应用程序的一部分受众。
正如已经说过几次的那样,分布式计算只是在两台或多台计算机之间编排的计算。云计算,顾名思义,就是分布式计算,而是一种特殊的形式。
Here is a nice whitepaper David Chappell。这是 Microsoft 赞助的论文,因此它是根据 Microsoft 的云平台 (Azure) 介绍的,但其基本原理非常普遍,David Chappell 总是很容易阅读。
【讨论】:
Chappell 有几篇论文和演示文稿。我也相信他在尝试将云平台的一些要点传达给人们方面做得很好。然而,人们往往会完全忽略云队列作为跨企业 EDA 推动者的优势。键/值和文档数据库是重要的云设施,但远不是人们需要熟悉的唯一一个。不过,我可以看出这对维护 Joe's Lawn Service 网站的人来说并不重要。【参考方案2】:首先我要说的是,我们在 100% 基于云的环境中运行重要的金融服务产品。
云计算的定义并不那么明确(就像任何流行语一样,每个人都希望以某种方式使用最新的流行语来为其现有产品打上烙印)。
在我看来,云计算的关键是我可以将计算资源(CPU、内存等)视为商品而不是资本。
这是什么意思?
传统上,如果我想为我的组织增加一些计算能力,我需要出去购买更多的计算机,安装它们并维护它们。云计算(Eric J. 的定义)让我可以在需要时获取额外的计算能力,然后在不需要时释放它。我们提供销售税计算服务。在圣诞节前夕,我们需要比一年中其他时间更多的计算能力。我们的云环境让我可以在几秒钟内添加资源,然后在我不需要它们时尽快释放它们。我们的一位大客户有时会有 1 小时的超额销售。我可以添加额外的处理能力只为那个小时然后在完成后释放它。
我们在该云计算基础架构之上提供的解决方案是软件即服务 (SaaS)。在我看来,像 GMail 这样的东西是 SaaS,而不是云计算。
那么所有这些与分布式计算相比如何?
分布式计算只是意味着我分解一个问题,以便我可以让一大堆计算机同时处理它。伯克利大学的BOINC 项目就是一个很好的例子(请考虑注册)。他们在志愿者提供的所有计算机上分发科学研究项目。
BOINC 和其他分布式项目所涉及的计算机可以是人们的笔记本电脑、台式机、服务器。它们可以安装在我的办公室、从 ISP 租用的虚拟服务器或属于“云”的虚拟服务器。计算机来自哪里并不重要。如果我可以在计算机上安装分布式计算软件,它就可以成为分布式解决方案的一部分。
【讨论】:
云计算的优缺点是什么?云计算是否提供了非常诱人的好处,我们可以为此承担数据/信息安全性的风险? @Rachel:如果您为 Visa 或 NSA 工作,那么将您的数据放在云中会带来相对的安全风险。例如,如果您为一家初创公司或中型公司工作,那么一家有信誉的云提供商很可能拥有比您更好的安全协议。您是否拥有 SAS 70 和 PCI 认证、服务器机房的生物识别访问控制、持续的视频监控、24 小时守卫和严格的访问协议?如果不是这样,像 AWS 这样的公司实际上提供了卓越的安全性。【参考方案3】:分布式计算涉及将一个大问题分成更小的切片,并让多台联网计算机处理这些切片。
云计算通常是指通过互联网提供服务。该服务几乎可以是任何东西,从通过网络访问的商业软件到异地存储或计算资源。
编辑:正如我下面的海报所指出的,它通常是这些服务的营销术语。
【讨论】:
我习惯听到称为 SaaS(软件即服务)的“通过互联网提供服务”。对我来说,云计算意味着将计算基础设施作为一种商品提供......只要你需要就租用你需要的东西。【参考方案4】:分布式计算是多台计算机参与解决/计算任务的地方。喜欢Folding@Home。
Cloud computing 是关于在互联网服务上拥有数据(文档、图片等)。我猜 GMail 和 Google Docs 形成了一种云计算。
【讨论】:
啊,再次欢迎奇数 -1 票...请说明原因...厌倦了这个网站上所有无聊的不那么有建设性的选民。 所以云是关于数据而不是计算?你的回答似乎说明了这一点。【参考方案5】:请记住,cloud computing 一词已变成 marketing term,几乎可以代表任何事物。对于编码人员,该术语指的是存储和检索名称/值对的分布式方式。值得注意的例子包括BigTable(您最有可能从Google App Engine 中访问)和EC2。
【讨论】:
使用云计算有什么好处?我们可能会遇到安全丢失等问题。 冗余是一个可能的好处。一台机器/进程失败可能会使“云”的大部分内容完好无损。 嗯,我不确定所有“编码人员”都会同意该定义 - 尽管 Big Table 是一项云服务,但我认为将定义限制为检索键/值对严重限制了几乎所有人的书中都有云计算。 可以将冗余视为应用程序的开销吗?我看不到云计算会给当前的应用程序开发场景带来什么好处。有人可以分享一些灯吗? 最初,成本是主要动力。初创公司可以利用 Google 和 Amazon 基础设施快速进入市场。以上是关于云计算和分布式计算的区别? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章