概述
在复杂的系统开发中,经常会遇到并发编程、高并发、并行计算、分布式系统、分布式计算、分布式存储这些词语,那么这些词背后的并发、并行、分布式到底有什么区别呢?
总的来说,这些概念有许多重叠,没有特别清晰的划分[1]。但是从它们最常见的含义上,可以从以下几个方面来区分。
从处理器上看
从处理器个数来区分
并发处理:是在同一个处理器上同时做多件事。如下图所示:
并行处理:在多个处理器上同时完成多个(可能相关的)任务。如下图所示:
分布式处理:在同一个网络里面的多台机器上同时完成多个任务。如下图所示: