N-Tiers設計系列(二):三層式應用系統架構

  • 53691
  • 0
  • ASP
  • 2008-06-09

摘要:N-Tiers設計系列(二):三層式應用系統架構

繼續上一篇的討論....

如果使用ASP來處理複雜的商業邏輯的網頁應用系統,會有以下幾個缺點

  1. ASP內容複雜:如果處理資料需要複雜的處理、那麼asp會變成複雜許多
  2. 安全性:把資料的讀取、維護寫在ASP中並不安全,因為可能為駭客透過特定的方式查知您的asp程式的內容,進而知道您的資料庫、資料表、欄位、甚至您的商業邏輯
  3. 不易處理資料庫交易(Transaction):如果需要維護多個資料表、甚至多個資料庫,那麼要維持資料異動得完整性(全部的資料表維護成功才算、只要有其中一個環節失敗,維護的資料要還原回去)

因此....為了因應以上的幾個需求,因此有了三層式的網頁應用系統架構

將網頁的應用系統,拆成三個部份

  1. 介面層(IIS):用來負責使用者的介面與資料展示介面的產生,把原來ASP中負責畫面處理的不份保留在此層
  2. 資料層(DB):用來負責資料的新增、修改、刪除、查詢
  3. 商業邏輯層(COM+):至於複查的資料處理、商業邏輯、資料異動的一致性等複雜的工作,就交由中間的【商業邏輯層】來處理。

商業邏輯層是用VB或者C或者其他語言所撰寫的元件,並且是已經編譯過的DLL,與ASP的直譯式語言(執行的時候才開始編譯)效能上比較佳。此外將已經編譯好的DLL註冊在【元件服務(COM+)】中,透過COM+來處理資料異動的完整性,對於開發程式而言,輕鬆不少。有關於資料異動的完整性、程式撰寫的方式、元件註冊方式等,在後面的章節會陸續介紹。


以下是簽名:


Microsoft MVP
Visual Studio and Development Technologies
(2005~2019/6) 
topcat
Blog:http://www.dotblogs.com.tw/topcat