軟件測試之ASP.NET多頻道網站開發架構淺析和實現方法(1) .NET網站架構
關鍵字:ASP.NET 多頻道 網站 架構 .NET
我們打開門戶網站時,往往會看到很多排列緊密的頻道列表,如“新聞”、“財經”、“娛樂”等。頻道為網站提供了方便的導航功能。
知識準備
本文中提到的各架構方案均基于MVC(Model-View-Controller)模式,對該模式中各組成部件作如下簡短描述:
◆Model:包含業務邏輯操作以及數據訪問操作
◆View:包含UI處理相關操作
◆Controller:控制并協調View與Model的處理過程
各方案比較
方案架構描述代碼重用性開發方式部署方式
方案一為整個網站建立一個Web Project。每個頻道對應于Web Project中的一個目錄,有點類似于ASP的處理方式。Model部件既可以包含于Web Project中,也可以封裝成Class Library。將Model部件封裝成Class Library后將獲得較高的重用性。模塊較為集中,開發較為快捷,但不適合大規模協作開發。模塊較為集中,部署比較方便,但一個小的BUG可能會導致整個網站的癱瘓。
方案二為每個頻道建立一個Web Project。每個頻道的Model部件既可以包含于相應的Web Project中,也可以分別封裝成Class Library。每個Model部件都應用于特定的頻道,代碼分散,重用性較低。各模塊較獨立,適合按照功能模塊分配任務的開發方式。各模塊獨立,部署工作非常繁復,但由于各頻道是松耦合的(甚至可以位于不同的服務器),一個頻道的故障不會影響到其他頻道的正常運行。
方案三為每個頻道建立一個Web Project。所有頻道的Model部件封裝成一個共用的Class Library。所有頻道共用一個Model部件,代碼較為集中,具有很高的重用性。開發方式較為靈活,既可以按照功能模塊分配任務,也可以按照MVC各組成部件分配任務。各模塊獨立,部署工作比較繁復,但由于各頻道是松耦合的(甚至可以位于不同的服務器),一個頻道的故障不會影響到其他頻道的正常運行。
總結
根據上文分析,我們大致可以得出以下結論:
文章來源于領測軟件測試網 http://www.kjueaiud.com/