分布式计算是一种使用位于不同操作位置的大量计算资源来模拟单台计算机的处理过程。分布式计算将不同的计算机、服务器和计算机网络组合在一起,以完成规模和用途各异的计算任务。
分布式计算甚至在云中也能工作。虽然分布式云计算和云计算在理论上本质上是相同的,但在实践中,它们在全球范围上有所不同,分布式云计算能够将云计算扩展到不同的地域。
在小型分布式计算系统中,如果组件彼此靠近,则可以通过局域网 (LAN) 连接组件。在大型分布式系统中,如果组件在地理位置上分开,则通过广域网 (WAN) 连接组件。分布式系统中的组件通过复杂的消息传递系统共享信息,无论使用哪种类型的网络。
分布式计算通常可以解决计算领域最复杂、最密集的计算挑战,因此这种活动通常需要实现共享内存和多个组件。此外,分布式计算依赖于高度协调的同步和强大的计算能力,以便整个系统能够有效地处理数据、根据需要进行文件共享并朝着共同的目标努力。
10 个分布式计算用例
以下示例展示了分布式计算在许多行业和平台上的应用方式:
通讯
通信行业经常使用分布式计算。电信网络是点对点网络的例子,无论它们是电话网络还是蜂窝网络。互联网和电子邮件是分布式计算的两个主要通信示例,它们都改变了现代生活。
计算
人工智能 (AI) 和机器学习 (ML) 的重大革命正在主导计算领域。这两项技术都在迅速发展,并且都大量使用分布式计算。支持 AI 和 ML 的算法需要大量训练数据,以及强大而稳定的处理能力。分布式计算可以同时满足这两项需求。
数据管理
分布式计算将复杂的数据管理和数据存储作业转变为分布在节点上的子任务,这些节点是充当客户端或服务器的实体 – 识别需求并发出请求或努力满足这些需求。数据库管理是分布式计算赋予的一个领域,分布式数据库也是如此,通过将任务分解为更小的操作,分布式数据库的执行速度更快。分布式计算甚至包括使用数据中心作为分布式计算链的一部分。
活力
分布式计算对能源和环境领域都产生了影响,它正在协助智能电网技术调节能源消耗的使用和优化。智能电网还用于从各种输入设备收集环境数据。
金融
分布式计算确保大量计算负载在多个系统之间均匀分布。此外,特定金融领域的工作人员已经在使用分布式计算进行风险评估等工作。分布式计算可帮助金融机构进行大量计算,从而更好地为决策提供信息并制定金融策略。
制造业
分布式计算利用多种资源来确保大型制造设施的自动化高效运行,并且通常起到负载平衡的作用。甚至还有分布式制造,它使用分布式云模型并将其应用于地理上分散的生产工具。制造业还涉及设计和创建用于收集和传输数据的物联网 (IoT) 小工具和工具。
医疗的
分布式计算有助于实现许多现代医学的突破性技术,包括依赖大量数据的机器人手术。通过利用其惊人的精细 3D 图形和视频动画,分布式计算可以演示专利程序和计划用药的药物设计。
零售
对于经营实体店并提供在线购物选择的零售商来说,库存差异有时会发生。分布式计算支持的分布式订单管理系统 (DOMS) 有助于保持电子商务应用程序平稳运行,因此现代零售商可以跟上不断变化的客户期望。
科学
分布式计算正被越来越多地应用于科学研究,例如训练神经网络。科学计算还利用分布式计算的强大能力来解决大规模科学计算,例如控制太空飞行的计算。分布式计算视频模拟可以使科学预测更加易于理解。
视频游戏
大型多人在线游戏 (MMOG) 提供商广泛使用分布式计算来构建和运行复杂的实时游戏环境。操作系统、网络和处理器的复杂结合使数千名终端用户能够共享和参与令人着迷的游戏体验。
什么构成了分布式计算系统?
尽管对于分布式计算系统的构成没有固定的规则,但即使是最简单的分布式计算形式通常也至少包含三个基本组件:
- 主系统控制器: 主系统控制器控制分布式系统内的一切,并监控和跟踪该系统内发生的一切。其最大的工作是管理和管理进入系统的每个服务器请求。
- 系统数据存储: 系统数据存储区通常位于磁盘库中,是系统所有共享数据的存储库。在“非混乱”系统中,共享数据可能位于一台或多台机器上,但系统中使用的所有计算机都需要访问数据存储区。
- 数据库: 分布式计算系统将所有数据都存储在关系数据库中。一旦完成,数据就会由用户组共享。关系数据库可让所有工作人员立即达成共识。
除了这些核心组件之外,每个分布式计算系统都可以根据组织的需求进行定制。使用分布式计算系统的一大优势是可以通过添加更多机器来扩展系统,从而提高其可扩展性。另一个重要优势是增加了冗余度,因此如果网络中的一台机器因某种原因发生故障,系统的工作仍会继续,尽管该点发生故障。
分布式计算系统的目标是使分布式计算网络像单个系统一样运行。这种协调是通过各种组件之间复杂的消息传递系统来实现的。
通信协议控制着消息的来回交换,并在这些组件之间建立一种称为“耦合”的关系。这种关系以以下两种形式之一表达:
- 松耦合: 两个松耦合的组件之间的连接足够弱,因此对一个组件的改变不会影响另一个组件。
- 紧耦合: 紧密耦合的组件中的同步和并行级别非常高,以至于称为“集群”的过程使用冗余组件来确保系统的持续可行性。
“容错”是另一个关键概念——一种纠正过程,允许操作系统响应并纠正软件或硬件故障,同时系统继续运行。
分布式计算还处理“并发性”(即同时执行多个操作指令序列)的正面和负面影响。其主要正面影响是,并发性可以实现共享资源和多个进程线程的并行计算。(但不应将并行计算与并行处理混淆,后者是将运行时任务分解为多个较小任务的过程。)
并发带来的负面影响包括增加延迟,甚至流量瓶颈,即传输的数据量超出正常建议的带宽。
分布式计算系统架构
分布式计算类型通常根据各自使用的分布式计算架构进行分类:
- 客户端-服务器系统: 使用客户端-服务器架构,使其可以与多个系统一起使用。客户端将输入作为请求(通常是特定任务的命令或对更多计算资源的请求)定向到服务器。然后服务器开始完成任务并报告所采取的操作。
- 对等系统:这依赖于 基于对等架构,也称为“对等”系统。对等系统使用节点,这些节点充当客户端或服务器 – 识别需求并发出请求或努力满足这些需求。顾名思义,对等系统中没有层次结构,因此在对等系统中运行的程序可以自由地相互通信并通过对等网络传输数据。
- 中间件: 在两个不同的应用程序之间运行的“中间人”。中间件本身就是一个位于两个应用程序之间并为两者提供服务的应用程序。中间件还具有解释性。它充当在不同系统上运行的各种互操作性应用程序之间的转换器,并允许这些应用程序自由交换数据。
- 三层体系: 之所以这样命名,是因为用于表示程序功能的层数。与将数据放置在客户端系统内的典型客户端-服务器架构不同,三层系统将数据存储在其中间层,即数据层。三层系统通常用于 Web 应用程序。
- N 层系统: N 层系统有时被称为多层分布式系统,其网络功能容量不受限制,它们会将这些功能路由到其他应用程序进行处理。N 层系统的架构与三层系统的架构类似。N 层系统通常用作众多 Web 服务和数据系统的架构基础。
虽然这些是分布式计算架构的主要类型,但还有其他分布式计算范例值得一提:
- 区块链: 区块链是一种分布式数据库或账本,可在网络的各个计算机上复制和同步。区块链通过向链中的所有计算机发布源账本来帮助确保冗余。
- 网格计算: 网格计算是一种处理非交互式工作负载的分布式计算,通常涉及网格框架和中间件软件的组合。通过用户界面访问的可扩展网格就像一个巨大的文件系统。
- 异构计算: 异构计算是一种分布式计算,允许单个计算机系统维护计算子系统。异构计算中工作的处理器可能正在执行不同的任务,但它们都并行工作以加速计算机性能并最大限度地缩短任务处理时间。
- 微服务: 微服务是一种分布式计算形式,其中应用程序被分解为更小的组件,通常称为“服务”。服务框架由应用程序接口 (API) 连接在一起,从而实现组件之间的交互。
开始使用
在我们对分布式计算的快速了解中,我们了解了什么是分布式计算、分布式计算系统的构建过程以及与分布式计算系统相关的架构类型。此外,我们还了解了 10 个行业正在通过特别使用分布式计算系统来巧妙地规划未来。
与分布式计算一样,IBM Satellite 产品为您提供在任何地方部署和运行应用程序的工具 – 无论是在本地、通过边缘计算还是公共云环境。
使用包括工具链、数据库和 AI 在内的一组通用云服务。IBM Cloud Satellite 管理的分布式云解决方案可提供云服务、API、访问策略、安全控制和合规性。
探索 IBM Satellite 产品
本文是否有帮助?
是的不