可伸缩性和弹性有什么区别?

我听到很多人交替使用这两个术语。 但是,我认为他们之间有区别:

可扩展性 – 系统增加当前硬件资源的工作量( 扩大 )的能力;

ELASTICITY – 系统增加当前和额外(按需dynamic添加)硬件资源( 扩展 )的工作量的能力;

弹性与部署在云上的应用程序密切相关。

这两个不起作用的软件特点有没有区别? 可能有人给出了具体的例子,所以我们可以在这两个术语之间画出更有特色的边界?

可扩展性是系统通过添加资源(使硬件更强大(扩大)或添加额外节点(扩展))来适应更大负载的能力。

弹性是通常与扩大相关的能力,以适应dynamic负荷所需的资源。 因此,当负载增加时,通过添加更多资源来扩展,当需求减less时,缩减并移除不需要的资源。 弹性在云环境中非常重要,您可以按使用付费,不想为您目前不需要的资源支付费用,另一方面需要满足不断增长的需求。

_

可扩展性: “增加”满足“增加”工作负载的能力。

弹性: “增加或减less”满足“增加或减less”工作量的能力。


可扩展性:在扩展环境中,可用资源可能超过以满足“未来需求”。

弹性:在弹性环境下,可用资源尽可能地与“当前需求”相匹配。


可伸缩性:可扩展性仅通过“增量”方式“资源调配”来适应“工作量增加”。

弹性:弹性适应“工作量增加”和“工作量减less”,以“自主”方式“调配和取消”资源。


可扩展性:增加单个计算机资源的能力或增加一组计算机资源的能力可以增加工作量。

弹性:随着计算机资源使用的变化而变化的工作量。


可扩展性:可扩展性使企业能够满足“长期战略需求”对服务的预期需求。

弹性:弹性使企业能够满足“短期,战术需求”服务需求的突然变化。


可扩展性: “增加”服务于工作负载不断增加的环境的能力。

这种可扩展性可以是“扩展”或“扩展”。

(例:

扩大规模 – 提高个人服务器的能力

扩展 – 通过将多个服务器添加到单个服务器来增加function。

弹性:就是“放大或缩小”随意服务的能力。


可扩展性:使用一个比喻,“扩大”是一个人增加她的权力,以满足日益增长的需求,“扩大”正在build立一个团队,以满足日益增长的需求。

弹性:用一个明喻,电影演员增加或减less她的体重,以满足电影业的不同需求。

_

通常,当某人说平台或架构规模时 ,意味着硬件成本随着需求线性增长。 例如,如果一个服务器可以处理50个用户,2个服务器可以处理100个用户,10个服务器可以处理500个用户。 如果你每得到1000个用户,你需要的服务器数量是2倍,那么可以说你的devise没有扩展,因为随着用户数量的增长,你将很快耗尽资金。

弹性用来描述你的架构如何能够实时地适应工作负载。 例如,如果您每个小时都有一个用户login到您的网站,那么您实际上只需要一台服务器来处理这个问题。 但是,如果突然之间有5万个用户立即login,您的体系结构能够快速(可能自动)提供新的Web服务器来处理这个负载吗? 如果是这样,可以说你的devise是有弹性的

弹性与服务或应用程序的短期需求及其变化有关,但可伸缩性支持长期需求。

从我对这些概念的有限理解中,举个例子:

假设我们有一台5台电脑的系统可以连接5个工作单元,如果我们需要再做一个工作单元的话,我们将不得不再用一台电脑。 这是一个可扩展的系统,但它不是弹性的。 有人不得不去拿另一台电脑。 而且,如果购买新的计算机并且不再需要额外的工作单元,则系统卡住冗余资源。

现在,可以说,同一个系统使用云计算服务,而不是自己的计算机来满足其需求。 理想情况下,当工作负载达到一个工作单元时,云将为系统提供另一个“计算单元”,当工作负载回落时,云将优雅地停止提供该计算单元。 这是一个系统既可扩展又有弹性的情况。