MVC三層結構就是:使用者介面層,商業邏輯層,資料庫層

來源:互聯網
上載者:User

二層是 用戶端-伺服器

三層是 用戶端-中介軟體-伺服器

  三層結構就是:使用者介面層,商業邏輯層,資料庫層
  使用者介面層負責處理使用者的輸入和向使用者的輸出,但並不負責解釋其含義(出於效率的考慮,它可能在向上傳輸使用者輸入前進行合法性驗證),這一層通常用前端工具(VB,VC,ASP等)開發;商業邏輯層是上下兩層的紐帶,它建立實際的資料庫連接,根據使用者的請求產生SQL語句檢索或更新資料庫,並把結果返回給用戶端,這一層通常以動態連結程式庫的形式存在並註冊到伺服器的註冊簿(Registry)中,它與用戶端通訊的介面符合某一特定的組件標準(如COM,CORBA),可以用任何支援這種標準的工具開發;資料庫層負責實際的資料存放區和檢索。

  不想說大的概念,就說現在實際中用的比較多的吧。前台用PB,DELPHI,做介面和一些必要的元素的組織和簡單的處理(不涉及資料庫);中介軟體(IBM CICS,或者BEA TUXEDO),處理那些需要操作資料庫的業務部分。比如計算一張申請單中涉及的費用,然後傳給前台;底層就是資料庫了,大型的很多用Oracle。當然最底層就是UNIX了,現在小型機中比較多的是SUN Solaris 和HP UX.在這種情況下,中介軟體提供的是一個個服務,組織成一個個程式。以CICS為例,前台有三類:C/C++,Java,PB/DELPHI/VB等。因為中介軟體服務本身就是用C/C++/COBOL混合SQL(Oracle中叫Pro C)寫成的,所以C/C++的介面很簡單,裝個CICS用戶端就可以。Java是用一些對象(沒用過),PB等是用OLE方式,也要聲明對象,就像在PB中聲明非sqlca的Transaction Object一樣簡單。中介軟體和資料間通訊遵循的是XA規範,是來往兩組C API,有興趣可以研究一下啊。不知道這樣說是不是說得很複雜?

  接下來說一下為什麼要用中介軟體,這是我的理解。
1.效能問題 主要是指訪問資料庫,這是大系統中主要的瓶頸。直接連庫在終端少的時候沒有問題。但是想想銀行,電信的行業,幾百個終端程式,全連上去,一個程式會有很多串連,就算是強大的Oracle也會受不了。而且是很多短小的SQL語句的頻繁訪問,就會不斷開和斷很多串連。開銷很大。採用中介軟體後,它和資料庫之間保持固定數目(有得中介軟體按這個串連數收錢)的串連,而且從線路角度講,這種線路比各處的終端過來的好,短距離,而且高速穩定。所有關鍵區段都在中介軟體處理,它會批量和資料庫打交道。還有一個好處。資料庫server一般就一個,多了一致性就是問題。而中介軟體server可以很多個,可以動態均衡負載,多台連上一個DB server。畫個圖就很容易理解了,而且以後業務量大了,還可以增加。

2.安全問題 上述的行業很重要的。每個終端可以直接操作資料庫就意味這有許可權,象銀行和電信的資料,都是錢,這樣很危險的。而且中斷時的事務完整性也很要注意。

3.更新和維護 由於業務部分在中介軟體,是集中的,更新是很好更新。想一想幾百個中斷,一旦整個版本出問題或者更新,就是一項工程了。

4.可擴充性 上面已經談到可以增加server。
要說明的是多了一層不會慢的,因為中介軟體是用C/C++和SQL寫的,編譯後效率很高的。

  以上只是我接觸的一些,肯定不是很全面,而且自己也在不斷學習,可以上網用CICS或者TUXEDO搜尋一下,可以找到很多中介軟體的文章,有些是有商業目的的,不要全信哦。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.