分布式计算中的并发与拓扑:探索新视角
1. 并发无处不在
在当今社会,并发已经成为计算机系统的主流特征。现代计算机系统的并发程度越来越高,几乎社会中的每一项活动都依赖于互联网,分布式数据库之间以及与人类之间相互通信。即使是看似简单的日常任务,也需要复杂的分布式算法。例如,当客户从自动取款机取款时,银行系统必须在存在故障和不可预测的通信延迟的情况下,要么同时提供资金并扣除账户余额,要么两者都不做。
并发不仅存在于广域网中。随着晶体管尺寸的缩小,处理器的散热问题变得越来越严重,处理器制造商放弃了提高处理器速度的努力,转而专注于提高处理器的并行性。如今的笔记本电脑通常配备多核处理器,每个核心又可能是多线程的,同时还可能依赖专门的图形处理单元(GPU),并通过网络与“云”中的其他机器进行通信。
分布式系统是由多个顺序计算实体(即进程)组成的集合,它们合作解决一个任务。进程之间可以通过消息传递、共享内存等方式进行通信,每个进程运行一个程序,这些程序共同定义了一个分布式算法或协议。设计高效的分布式算法是一项挑战,因为需要考虑故障、不可预测的通信和调度延迟等因素。
2. 分布式计算与拓扑
过去十年中,出现了基于拓扑学的新技术来分析分布式算法。拓扑学是研究物体在连续变形下不变性质的数学领域,如拉伸、扭曲等,但不包括撕裂或粘合等不连续操作。组合拓扑学是拓扑学的一个分支,专注于离散结构,例如可以用平面三角形近似球体。
虽然计算机科学基于离散数学,但组合拓扑学及其应用对许多计算机科学家来说可能并不熟悉。因此,需要对组合拓扑学概念进行自包含的基础介绍,同时也需要对分布式计算的标准概念进行介绍,以帮助不同背景的读者理解。
超级会员免费看
订阅专栏 解锁全文
59

被折叠的 条评论
为什么被折叠?



