云原生Spring实战
上QQ阅读APP看书,第一时间看更新

1.5.3 扩展

弹性指的是能够根据负载情况对软件进行扩展。我们可以扩展一个弹性系统,确保为所有的客户提供足够的服务水平。如果系统的负载比往常高,那么我们需要生成更多的服务实例来支持额外的流量。或者发生一些严重的事情,有些服务出现了故障,这样我们就需要生成新的实例来替换它们。

问题在于,预见会出现什么样的状况是很困难的,甚至是不可能实现的。仅仅构建可扩展的应用还不够,我们还需要它们能够动态扩展。每当出现高负载的时候,系统能够动态、快速且毫不费力地进行扩展。当高峰期结束的时候,它应该能够再次收缩回来。

如果你的业务需要快速、有效地适应新的客户,或者需要灵活支持新类型的客户端(这会增加服务器的工作负载),那么云的本质特点再结合云原生应用(按照定义,它就是可扩展的)能够为你提供所需的所有弹性。