前言
互联网时代,分布式是一个绕不过去的话题。本文将简单谈谈个人对分布式的理解。
何为分布式
维基百科上对分布式系统(Distributed System)的定义如下:
A distributed system is a system whose components are located on different networked computers, which communicate and coordinate their actions by passing messages to one another from any system. The components interact with one another in order to achieve a common goal.
简单翻译一下:分布式系统内部会包含多个组件,它们位于不同的机器之上。这些机器之间会通过传递消息来进行通信协作,整个系统像一个整体一样对外界提供服务。
为什么需要分布式
与分布式系统相对应的是单体系统。何为单体系统?即所有组件 / 模块都位于同一台机器之上系统。试想一下,如果有一台理想的机器,算力无限,内存无限,带宽无限,存储空间无限且永不宕机,那我们还会引入分布式吗?显然不会,这台机器已经能满足我们所有的需求。理想很丰满,现实很骨感:不可能存在这样的机器,单机资源无法无限制的扩充。业务不断发展&#