原文: https://en.wikipedia.org/wiki/Fallacies_of_distributed_computing
分布式计算的谬误是L Peter Deutsch 和太阳微系统公司的其他人提出的一组断言,描述了分布式应用程序新手总是做出的错误假设。
谬误
谬误包括:
- 网络是可靠的;
- 零延迟;
- 带宽是无限的;
- 网络是安全的;
- 网络拓扑不会变化;
- 只有一个管理员;
- 传输成本是零;
- 网络是同构的;
谬误的效果
- 编写软件应用程序时很少对网络错误进行错误处理。在网络中断期间,此类应用程序可能会停止或无限等待应答数据包,从而永久消耗内存或其他资源。当出现故障的网络可用时,这些应用程序也可能无法重试任何停止的操作或需要(手动)重新启动。
- 对网络延迟及其可能导致的数据包丢失的忽略会导致应用层和传输层开发人员允许无限制的流量,从而大大增加丢弃的数据包并浪费带宽。
- 流量发送方对带宽限制的忽略可能会导致瓶颈。
- 对网络安全的自负会被不断适应安全措施的恶意用户和程序所欺骗。
- 网络拓扑的变化可能对带宽和延迟问题都有影响,因此可能会出现上述的问题。
- 与竞争对手公司的子网一样,多个管理员可能会制定相互冲突的策略,即网络流量的发送者必须知道哪些策略才能完成他们想要的路径。
- 构建和维护网络或子网的“隐藏”成本是不可忽略的,因此必须在预算中注明以避免资源短缺。
- 如果一个系统假设一个同构网络,那么它可能会导致与前三个谬误相同的问题。
(完)