2013-03-09 111 views
0

根據這個引用,如果我設計一個可擴展的arquitecture,它將在需要時擴展,不管這個技術如何。關於可擴展性的困惑

Languages, libraries and frameworks don't scale. Architectures do. 

並根據wikipedia scalability page可伸縮性是有關硬件(節點和存儲器)。

規模是什麼意思,什麼時候是真正可擴展的應用程序?

+1

當硬件增加時,應用程序的性能儘可能接近線性增加。 – 2013-03-09 14:40:24

+0

我不知道多少股票,我會把這樣的報價。他們太模糊而寬泛,是真實的(或錯誤的)。現實總是比較複雜。 – siride 2013-03-09 14:50:00

回答

0

「語言,圖書館和框架不能擴展,體系結構可以。」

這是一個真實的陳述。因爲,語言,圖書館和框架應被視爲架構實施的「工具」。

讓我詳細解釋一下,在良好的架構 - 組件(如語言,框架等)可以被替換或互換。例如,許多開源項目實現都可以使用不同的語言。在這些體系結構的可擴展性方面,由於這些體系結構是建立在語言/框架/庫的通用特性集上的,所以這些體系結構可以很好地擴展。

請注意,系統的性能與系統的可擴展性非常不同。

0

可伸縮性通常是分佈式系統的一個屬性,其中有多個用戶(例如網站),但這不是必需的。可擴展性可能涉及硬件選項(例如,增加服務器內存或CPU功率以同時處理更多用戶),但在您的情況下,我認爲這種引用意味着您應該使用體系結構(軟件體系結構)來開發您的軟件獨立於用於構建該軟件的工具(因此是語言,框架和庫)。例如,使用分層體系結構或其他着名的軟件體系結構來開發您的軟件,從而實現應用程序的擴展。 備註:這是我個人的意見,並非基於任何形式或科學的定義。