讀古今文學網 > 程序員必讀之軟件架構 > 系統架構 >

系統架構

我喜歡把系統架構看作是更大規模的應用程序架構。大多數軟件系統實際上是由橫跨不同層次和技術的多個應用程序組成。舉個例子,你可能有這樣一個軟件系統,Java EE中間層消費Oracle數據庫提供的數據,同時向.NET Silverlight客戶端提供Web服務。每個部分都有自己的應用程序架構。

要讓整個軟件系統工作起來,就要思考如何組合這些單獨的應用程序。換句話說,要有端到端軟件系統在較高層次上的整體結構。另外,大多數軟件系統都不是孤立的,因此系統架構還關注互操作性和與環境中其他系統的集成。

結構單元就是各種軟硬件,從編程語言和軟件框架到服務器和基礎設施。跟應用程序架構相比,系統架構描述為從組件和服務到子系統等更高層次的抽像。系統架構的定義大多數都包括了軟件和硬件。畢竟,一個成功的軟件系統離不開硬件,即使是雲上的虛擬硬件。