The role of the server under Ajax (1)

來源:互聯網
上載者:User

在《Ajax in Action》這本書裡,the role of the server這一章節被看作了Ajax的核心技術來介紹,可見其重要性。哪在Ajax眼裡究竟什麼是server的role呢。

從最頂上往下看,答案是:Server的角色一是負責把application送到browser;角色二是和client的互動,接受請求,把請求的結果資料返回給client。

如果把上述如此簡潔的答案看作是金字塔的最頂端,那支撐最頂端的下面部分是怎樣的呢。我們要先看看在web裡,Server構架的幾種形式:

1. 最簡單的一種方式是沒有構架。browser過來的每個page請求都被直接處理,沒有中介層存在,資料處理是直接和資料庫發生的。

2. 基於Model2 workflow的構架。應該說這是一種比第一點更層次化,更優的構架。其中,商務程序被組織成workflow的形式,而workflow的處理引擎由一個controller來承擔。controller並不直接存取資料庫,而是由一個業務資料中介層來做介面。這種構架的設計模式是MVC的一種,在controller接收請求,處理請求,返回結果的時候,其page內容的產生由專門的一個View/pages模組負責完成。

3. 基於組件的構架。在server這一側,application被分為不同的組件,每個組件即代表在browser上不同的業務組件模組。在這種構架下,server端同樣有一個centeral controller,由它來統一介面browser,並把請求分發給相應的組件controller。在這裡,每個組件有自己的controller來處理它所負責的商務邏輯,比如資料庫訪問,結果頁面的產生。在請求處理完畢後,由各自組件負責將結果頁面返回給browser。

4. 面向service的構架。這種構架以service為導向,和browser的互動以data中心,而不是content,在此構架下,Ajax client更像一個application,具備一般application所有的獨立性。以service為導向,可以把業務實現的重用性,耦合性做得更好,和上述構架相比,具備更大的靈活性,這種構架也是最適合Ajax發揮其特性。

(待續) 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.