網(wǎng)站制作使用MVC軟件架構(gòu)風(fēng)格和架構(gòu)模式釋義,當(dāng)我們在說“網(wǎng)站制作架構(gòu)”時,其實表達的是架構(gòu)風(fēng)格和架構(gòu)模式的雙重概念。網(wǎng)站制作公司提醒許多系統(tǒng)設(shè)計師將架構(gòu)風(fēng)格和架構(gòu)模式混為一談。架構(gòu)風(fēng)格和架構(gòu)模式有明確的定義和范圍,兩個概念共同組成了所謂的架構(gòu)。
網(wǎng)站制作首先看架構(gòu)風(fēng)格。風(fēng)格是對一系列特征和屬性的約束。這些約束可能是對架構(gòu)組件的功能約束,也可能是對連接這些組件關(guān)系的約束?,F(xiàn)在流行的微服務(wù)就是一種架構(gòu)風(fēng)格。微服務(wù)的架構(gòu)風(fēng)格定義了一系列的特征(約束),滿足這些約束的系統(tǒng)就是采用了微服務(wù)架構(gòu)風(fēng)格。
Roy Thomas Fielding在他的Rest論文中準確地定義了架構(gòu)風(fēng)格:“一種架構(gòu)風(fēng)格是一組協(xié)作的架構(gòu)約束,這些約束限制了架構(gòu)元素的角色和功能,以及在任何一個遵循該風(fēng)格的架構(gòu)中允許存在的元素之間的關(guān)系。”。簡單地說架構(gòu)風(fēng)格就是約束,只要符合某種約束就符合這種架構(gòu)風(fēng)格。而在滿足架構(gòu)風(fēng)格的約束時可以使用多種模式。這些模式就是架構(gòu)模式。
術(shù)語“模式”也是從建筑行業(yè)引入的概念,模式是在特定環(huán)境中針對一類問題的解決方案。而網(wǎng)站制作架構(gòu)模式就是架構(gòu)風(fēng)格在特定環(huán)境中具體應(yīng)用的解決方案。也就是說,一種架構(gòu)風(fēng)格可以有多種架構(gòu)模式。一種架構(gòu)風(fēng)格定義了必須遵守的規(guī)則與約定,而遵守這些規(guī)則和約定是為了達成架構(gòu)風(fēng)格的預(yù)期目的。在實現(xiàn)架構(gòu)時,會根據(jù)特定的環(huán)境和條件采用不同的方式,這種針對特定環(huán)境的實現(xiàn)方式就是特定環(huán)境下的解決方案,也就是架構(gòu)模式。
以常見的“客戶端-服務(wù)器”架構(gòu)風(fēng)格(Client-Server,簡稱CS)為例,CS架構(gòu)風(fēng)格被廣泛應(yīng)用到各種軟件系統(tǒng)中,尤其是企業(yè)應(yīng)用程序中。CS架構(gòu)風(fēng)格通過—系列的約束來實現(xiàn)客戶端和服務(wù)器的分離,網(wǎng)站制作公司整理規(guī)劃它的主要約束如下:
·服務(wù)器(Server)公開了一系列服務(wù),并隨時監(jiān)聽對調(diào)用服務(wù)的請求。·客戶端(Client)可以通過連接向服務(wù)器發(fā)出請求。
·服務(wù)器可以處理客戶端的請求并返回結(jié)果。
·服務(wù)器也可以拒絕客戶端的請求并返回拒絕的理由。
通過上述內(nèi)容可以看出,CS架構(gòu)風(fēng)格的定義很簡潔,事實上大部分架構(gòu)風(fēng)格的定義都很簡潔。CS架構(gòu)風(fēng)格只是定義了客戶端和服務(wù)器交互方式的規(guī)則和約束,約束了客戶端請求服務(wù)器前必須連接服務(wù)器,同時服務(wù)器通過監(jiān)聽網(wǎng)絡(luò)提供服務(wù),當(dāng)接收到客戶端的請求時,服務(wù)器會根據(jù)請求內(nèi)容響應(yīng)或者拒絕服務(wù)請求,如圖3.2所示。
CS架構(gòu)風(fēng)格將系統(tǒng)分為客戶端和服務(wù)器兩個應(yīng)用,并且服務(wù)的請求和響應(yīng)都是通過通信實現(xiàn)的。CS架構(gòu)風(fēng)格被大量地應(yīng)用于軟件產(chǎn)品中,在實現(xiàn)CS架構(gòu)風(fēng)格時根據(jù)實際需求和條件會有所差別。其中最常見的是兩層架構(gòu)模式(2-Tier),即把服務(wù)器和客戶端分別部署在兩個物理層(工作站和服務(wù)器主機)上,然后通過局域網(wǎng)或以太網(wǎng)把兩個物理層連接起來。這種架構(gòu)模式的典型應(yīng)用是FTP (FileTransfer Protocol)系統(tǒng),如圖3.3所示。
兩層架構(gòu)模式只是CS架構(gòu)風(fēng)格中的一種應(yīng)用。針對更復(fù)雜的情況,系統(tǒng)可能會采用三層甚至多層架構(gòu)模式。網(wǎng)站制作公司提示注意:示例中所謂的兩層架構(gòu)模式(2-Tier)和分層(Layer)模式不一樣,兩種層代表不同的含義,Tier表示物理上的層,而Layer表示邏輯上的層。好了,
深圳網(wǎng)站制作公司本文關(guān)于“網(wǎng)站制作使用MVC軟件架構(gòu)風(fēng)格和架構(gòu)模式釋義”的建站知識就分享到這里,謝謝關(guān)注,博納網(wǎng)絡(luò)編輯整理。