2012-03-06 58 views
40

我聽到很多人交替使用這兩個術語。然而,在我看來,它們之間的區別:可伸縮性和彈性有什麼區別?

可擴展性 - 以提高其當前的硬件資源的工作量(規模達)系統的能力;

彈性 - 增加的工作量在其電流和附加的(按需動態地添加)的硬件資源(向外擴展)的系統的能力;

彈性與部署在雲上的應用程序密切相關。

我有沒有區別這兩個非功能性軟件特性的權利? 可能有人給出了具體的例子,所以我們可以在這兩個術語之間畫出更加鮮明的邊界?

回答

19

通常,當有人說平臺或架構比例尺時,它們表示硬件成本隨需求線性增加。例如,如果一臺服務器可以處理50個用戶,2臺服務器可以處理100個用戶,10臺服務器可以處理500個用戶。如果每獲得1,000個用戶,您需要的服務器數量是2x,那麼可以說您的設計的規模並不是,因爲隨着用戶數的增長,您的資金將快速耗盡。

彈性用於描述您的架構如何能夠實時地將調整爲工作負載。例如,如果您每個小時都有一個用戶登錄到您的網站,那麼您確實只需要一臺服務器即可處理此問題。但是,如果突然間有50,000名用戶立即登錄,您的體系結構能否快速(並可能自動)提供新的Web服務器來處理此負載?如果是這樣,可以說你的設計是彈性

+0

可伸縮性是通過添加額外的資源或通過添加額外的資源在工作負荷增大的情況下,執行比以前更好在工作負荷增大的情況下,如之前執行? – 2016-01-10 10:17:43

35

可擴展性是系統通過增加資源(使硬件更強大(擴大)或添加額外節點(擴展))來適應更大負載的能力。

彈性是指能夠適應動態負載所需的資源,通常與擴展相關。因此,當負載增加時,通過添加更多資源來擴展,當需求減少時,縮減並移除不需要的資源。 彈性在雲環境中非常重要,您可以按使用付費並且不希望爲您目前不需要的資源支付費用,另一方面需要滿足不斷增長的需求。

+0

「可擴展性和彈性」是多餘的嗎?沒有可擴展性,東西可以是有彈性的嗎? – 2015-09-14 21:24:29

+2

某些東西可以具有有限的可伸縮性並且具有彈性,但通常來說彈性意味着利用可伸縮性並動態添加移除資源。 – 2015-09-15 07:10:15

+0

如果通過添加額外資源或者在工作負載通過增加額外資源而增加的情況下執行得更好,工作負載增加的情況下可伸縮性如前所述執行? – 2016-01-10 10:16:57

19

_

可擴展性: 「增加」 的能力,以滿足 「增加」 的工作量。

彈性:「增加或減少」滿足「增加或減少」工作量的能力。


可擴展性:在縮放環境,可用資源可能超過滿足「未來需求」。

彈性:在彈性環境中,可用資源儘可能與「當前需求」相匹配。


伸縮性:伸縮性適應僅在「增量」的方式「工作量增加」被「配置」的資源。

彈性:彈性以「自主」方式通過「供應和取消供應」資源適應「工作量增加」和「工作量減少」。


可擴展性:增加工作量送達增加一臺計算機資源的功率或由一組計算機資源的增加功率。

彈性:變化的工作負載是隨着計算機資源使用的動態變化而提供的。


可擴展性:可擴展性使企業能夠滿足與「長期戰略需求」服務的預期需求。

彈性:彈性使公司能夠滿足「短期,戰術需求」對服務需求的意外變化。


可擴展性:它是「增加」的能力,以滿足那裏的工作量越來越大的環境。

這種可擴展性可能是「擴展」或「擴展」。

(實施例:

向上擴展 - 增加個體服務器

向外擴展的能力 - 通過添加多個服務器中的各個服務器增加的能力。)

彈性:它是能夠「放大或縮小」任意服務的能力。


可擴展性:要使用一個比喻,「擴大」是一個單獨增加她的力量,以滿足不斷增長的需求,而「向外擴展」正在建立一個團隊,以滿足不斷增長的需求。

彈性:使用一個明喻,電影演員增加或減少她的體重,以滿足電影業的不同需求。

_

0

彈性相關的服務或應用程序及其變化,但可擴展性的短期需求支持長期需求。

0

從我有限的這些概念的理解,一個例子:

說我們有5臺計算機,做5個工作單位,如果我們需要一個更多的工作單位做我們,我們將不得不使用一個系統多一臺電腦。這是一個可擴展的系統,但它不具有彈性。有人不得不去拿另一臺電腦。另外,如果購買新計算機並且不再需要額外的工作單元,則系統會陷入冗餘資源。

現在,讓我們說的不是它自己的電腦,這是適合它的需求的雲服務,同樣的系統使用。理想情況下,當工作負載達到一個工作單位時,雲將爲系統提供另一個「計算單元」,當工作負載回落時,雲將優雅地停止提供該計算單元。這是一個系統既可擴展又有彈性的情況。