谭浩的博客

Simple is beauty.

分布式系统--分布式计算的若干谬论

分布式计算谬论

谬论

  1. 网络是可靠的
  2. 没有延迟
  3. 带宽是无限的
  4. 网络是安全的
  5. 网络拓扑不会改变
  6. 只有一个系统管理员
  7. 传输代价为零
  8. 网络是同质的

谬论的影响

  1. 软件应用程序编写时对网络错误几乎没有进行错误处理。在网络中断期间,此类应用程序可能会停止运行或无限地等待应答包,从而永久地消耗内存资源或者其他资源。当网络故障恢复时,这些应用程序也可能无法重新运行任何停顿的操作或需要(手动)重新启动。
  2. 无视网络延迟以及它可能导致的数据包丢失,会导致应用层和传输层开发人员允许无限制流量发送,大大增加丢包率以及宽带浪费。
  3. 忽视发送者的宽带限制可能导致瓶颈。
  4. 过度相信网络的安全性会导致无法察觉到恶意用户的入侵,从而无法及时采取安全措施。
  5. 网络拓扑结构的改变会影响宽带和延迟问题,从而导致相似的问题。
  6. 多个管理员可能会制定相互冲突的策略,网络流量的发送者必须知道这些策略才能得到所需的路径。
  7. 建立和维护网络或子网的隐藏成本是不可忽略的,因此必须在预算中标明,以避免巨大的不足。
  8. 如果一个系统假设采用同构网络,则可能导致前三个谬误导致的相同的问题。