计算机科学中的“边际效益递减”理论
边际效益递减,不仅仅是一个经济学词汇,在计算机硬件领域,也是这样的。
在经济学中,边际效益递减受人的心理影响,当消费某种物品时,开始的刺激一定大,从而人的满足程度就高,但不断的消费同一种物品,即同一刺激不断反复时,人在心理上的兴奋程度或满足必然减少。
在计算机科学中,不管是单机还是分布式集群,都存在一个问题:规模越大,维护成本越高。
在经济学中,导致这个结果的原因是人的心理。在计算机科学中,导致这个结果的原因是一些瓶颈。
经济学中的“不断消费同一种物品”,是物品的增加。对应到计算机科学中,是系统的扩展。
系统扩展能力
共享结构
当负载增加需要更强的处理能力时,最简单的办法就是购买更强大的机器(有时称为垂直扩展)。由一个操作系统管理更多的 CPU, 内存和磁盘, 通过高速内部总线使每个 CPU 都可以访问所有的存储器或磁盘。 在这样一个共享内存架构中, 所有这些组件的集合可看作一台大机器。
共享内存架构 的问题在千,成本增长过快甚至超过了线性:即如果把一台机器内的 CPU 数量增加一倍,内存扩容一倍,磁盘容僵加大一倍,则最终总成本增加不止一倍。并且由千性能瓶颈因素,这样一台机器尽管拥有了两倍的硬件指标但却不一定能处理两倍的负载。
共享内存架构能够提供有限的容错能力,例如高端的服务器可以热插拔很多组件(在不关闭机器的情况下更换磁盘,内存模块,甚至是CPU) 。但很显然,它