謝振華
摘要:信息技術及其互聯(lián)網(wǎng)的發(fā)展,傳統(tǒng)的web網(wǎng)站開發(fā)架構已越來越難于滿足現(xiàn)在web網(wǎng)站的需要,基于分布式的網(wǎng)站開發(fā)架構可以解決目前的wab網(wǎng)站需求,該文提出了升級傳統(tǒng)的web網(wǎng)站開發(fā)架構,將傳統(tǒng)的三層架構部署到不同的web服務器,以提高服務器的處理數(shù)據(jù)的能力。
關鍵詞:三層;分布式;架構
中圖分類號:TP393? ? ?文獻標識碼:A
文章編號:1009-3044(2019)18-0291-02
1 背景
隨著信息技術與互聯(lián)網(wǎng)技術的飛速發(fā)展,互聯(lián)網(wǎng)資源與互聯(lián)網(wǎng)用戶也爆炸式的增長。隨著資源和用戶爆炸式的增長,網(wǎng)站的承受能力在不斷地受到挑戰(zhàn),傳統(tǒng)的單一的網(wǎng)站架構越來越難于適應新時代的要求,因此基于分布式的網(wǎng)站架構設計成為當前的重點研究方向。
2 傳統(tǒng)web開發(fā)架構設計
早期的web網(wǎng)站,因為用戶的請求數(shù)量不大,采用單臺服務器部署服務,完全滿足網(wǎng)站的訪問需求,針對傳統(tǒng)的web開發(fā),采用了mvc開發(fā)模式,即模型(model)-視圖(view)-控制器(controller)。模型:指的是數(shù)據(jù)傳遞過程中的數(shù)據(jù)模型,比如某個對象,一般我們需要將數(shù)據(jù)庫存儲的某個表的記錄轉化成相應的對象進行數(shù)據(jù)傳遞和數(shù)據(jù)調(diào)用。視圖:用于將數(shù)據(jù)展示給用戶,一般將控制器傳送過來的數(shù)據(jù)通過頁面進行展示。控制器:數(shù)據(jù)處理,作用是針對用戶的請求,通過控制器進行數(shù)據(jù)處理之后,將請求的數(shù)據(jù)傳送給視圖,讓視圖展示給用戶。
控制器針對用戶的請求,進行數(shù)據(jù)處理是一個很復雜的過程,為了保證程序的可擴展性和代碼的可復用性,都進行了多層次的架構設計。目前都采用最常用的三層架構設計,分別為數(shù)據(jù)訪問層,業(yè)務邏輯層,和用戶接口層。數(shù)據(jù)訪問層:為業(yè)務邏輯層提供服務,主要是連接數(shù)據(jù)庫,從數(shù)據(jù)庫獲取記錄,并封裝成業(yè)務邏輯層所要求的數(shù)據(jù)格式。業(yè)務邏輯層:為用戶接口層提供服務,將用戶接口層任務解析成相應的多個邏輯,邏輯對應操作序列,邏輯依靠數(shù)據(jù)訪問層的服務,最后將最終的運算結果,返回給用戶接口層。用戶接口層:從視圖獲得數(shù)據(jù)或者返回數(shù)據(jù)給視圖。多層的好處是能夠進行大量代碼和方法復用,傳統(tǒng)web網(wǎng)站常采用分層思想來設計控制器。
3 分布式的網(wǎng)站開發(fā)架構設計
隨著用戶的大量增長,傳統(tǒng)的單服務器模式已經(jīng)不能滿足日常的用戶請求,需要多臺服務器來響應用戶的需求。而且,隨著移動互聯(lián)網(wǎng)的發(fā)展,用戶訪問服務器的終端設備也呈現(xiàn)了多種形式,訪問服務器的應用也出現(xiàn)了不同類型。在傳統(tǒng)的web架構中,單臺服務器同時部署了三層架構,單臺服務器就要同時處理三層功能,當用戶請求增加的情況下,為保證服務器的正常運行,就必須提高單臺服務器的硬件要求。單臺服務器的硬件配置是有極限的,而用戶請求數(shù)量增加是無限的,因此我們采用多臺服務器的分布式架構,是必然的現(xiàn)實要求。
在這種情況下,如何針對單臺服務器的web開發(fā)架構升級成多臺服務器的分布式架構,是我們必須要研究的課題。通過分析研究,我們可以將傳統(tǒng)web開發(fā)架構的控制層的三層分別遷移到不同的web服務器上去,以達到分布式處理任務的要求。 步驟如下:
首先對網(wǎng)站進行功能設計,根據(jù)不同的功能進行模塊設計,比如常見的互聯(lián)網(wǎng)網(wǎng)站,我們可以分成登錄/注冊模塊,商品瀏覽等模塊,不同的模塊可以部署不同的web服務器中。
其次我們可以將三層中的用戶接口層和業(yè)務邏輯層分隔開,部署到不同的服務器中。
最后將不同層次通過http協(xié)議或者其他協(xié)議進行數(shù)據(jù)調(diào)用。
4 總結
通過對傳統(tǒng)三層web開發(fā)架構的分析,對傳統(tǒng)三層web開發(fā)進行升級改造,將不同層次的功能分布到不同的web服務器上,形成分布式web開發(fā)架構,不同web服務器之間通過遠程調(diào)用互相訪問其資源。
參考文獻:
[1] 王佳琪. 基于J2EE架構的分布式企業(yè)級Web應用研究[J]. 計算機產(chǎn)品與流通, 2018(10).
[2] 孫德超, 陳冬亮. 基于J2EE架構的企業(yè)級人才招聘WEB系統(tǒng)的研究與實現(xiàn)[J]. 電腦知識與技術, 2006(11): 76-77.
【通聯(lián)編輯:謝媛媛】