GraphQL实战:写给全栈工程师们
上QQ阅读APP看书,第一时间看更新

1.2.1 扩展性

远程的计算机服务器拥有更好的扩展升级能力,这很好理解,因为一般服务器的主板上都会提供更多的CPU、内存以及硬盘的插槽。而普通的计算机以及手机的扩展升级能力是非常有限的。通常把这种给单独一台计算机(或者称为节点——Node)通过加CPU、加内存等方式来提升处理能力的做法称为垂直扩展或Scale Up。

但是单台计算机的扩展能力终归是有限的,在多数分布式系统架构中,更多的还是采用增加计算机(节点)的方式来提高分布式系统的整体处理能力。通常把这种增加节点的扩展方式称为水平扩展或Scale Out。

需要注意的是,水平扩展并不是被分布式系统原生支持的,需要通过合理的系统设计才能让分布式系统自由地水平扩展。本书也会花大量的篇幅来着重介绍如何设计可以水平扩展的GraphQL系统,将会在后面的章节结合GraphQL的特性详细讨论。