電子商務(wù)系統(tǒng)設(shè)計(jì) 03 電子商務(wù)系統(tǒng)_第1頁(yè)
電子商務(wù)系統(tǒng)設(shè)計(jì) 03 電子商務(wù)系統(tǒng)_第2頁(yè)
電子商務(wù)系統(tǒng)設(shè)計(jì) 03 電子商務(wù)系統(tǒng)_第3頁(yè)
電子商務(wù)系統(tǒng)設(shè)計(jì) 03 電子商務(wù)系統(tǒng)_第4頁(yè)
電子商務(wù)系統(tǒng)設(shè)計(jì) 03 電子商務(wù)系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩52頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

電子商務(wù)系統(tǒng)設(shè)計(jì)3.1電子商務(wù)系統(tǒng)概述電子商務(wù)系統(tǒng)由一系列的網(wǎng)頁(yè)和具有商務(wù)功能的軟件系統(tǒng)、數(shù)據(jù)庫(kù)、硬件設(shè)備和各類接口構(gòu)成。3.2系統(tǒng)硬件設(shè)備3.2.1服務(wù)器性能要求

電子商務(wù)系統(tǒng)面臨用戶對(duì)系統(tǒng)響應(yīng)的苛刻要求、動(dòng)態(tài)變化和難以預(yù)估的運(yùn)行負(fù)荷、未知的升級(jí)周期等。故在選擇服務(wù)器時(shí),要綜合其可用性、易使用性、可管理性、可擴(kuò)展性、安全性和網(wǎng)絡(luò)吞吐量等方面綜合考慮。

3.2.2數(shù)據(jù)存儲(chǔ)設(shè)備小容量存儲(chǔ)設(shè)備有只讀/可讀寫光盤、磁光盤和磁帶機(jī);大容量存儲(chǔ)設(shè)有磁盤陣列、磁帶庫(kù)、光盤塔和縮微膠卷等。網(wǎng)絡(luò)存儲(chǔ)技術(shù)有直接存取存儲(chǔ)、網(wǎng)絡(luò)連接存儲(chǔ)和存儲(chǔ)區(qū)域網(wǎng)絡(luò)技術(shù)。1)直接存取存儲(chǔ)(DirectAccessStorage)

以服務(wù)器為中心的存儲(chǔ)結(jié)構(gòu)。存儲(chǔ)器與服務(wù)器間通過I/O總線通信,服務(wù)器存儲(chǔ)轉(zhuǎn)發(fā)數(shù)據(jù)。各種存儲(chǔ)設(shè)備通過IDE、SCSI等I/O總線,經(jīng)通用服務(wù)器連接在網(wǎng)絡(luò)上。客戶端訪問存儲(chǔ)器,須向文件服務(wù)器請(qǐng)求。2)網(wǎng)絡(luò)連接存儲(chǔ)(NetworkAttachedStorage)

可提供文件級(jí)服務(wù)的存儲(chǔ)設(shè)備,可直接掛到網(wǎng)絡(luò)。擁有簡(jiǎn)化的操作系統(tǒng),硬軟件集合以提供文件服務(wù)。3)存儲(chǔ)區(qū)域網(wǎng)絡(luò)技術(shù)(StorageAreaNetwork)

SAN提供系統(tǒng)間面向網(wǎng)絡(luò)的數(shù)據(jù)傳輸與存儲(chǔ)。采用可擴(kuò)展拓?fù)浣Y(jié)構(gòu)連接存儲(chǔ)設(shè)備和服務(wù)器,將數(shù)據(jù)的存儲(chǔ)和管理集中在專用網(wǎng)絡(luò)中的存儲(chǔ)技術(shù)。服務(wù)器和存儲(chǔ)設(shè)備之間的多路、可選擇的數(shù)據(jù)交換,消除了以往存儲(chǔ)結(jié)構(gòu)中存在的可擴(kuò)展性和數(shù)據(jù)共享方面的局限性。SAN支持磁盤鏡像技術(shù)、備份與恢復(fù)、檔案數(shù)據(jù)的存檔和檢索、存儲(chǔ)設(shè)備間的數(shù)據(jù)遷移以及網(wǎng)絡(luò)中不同服務(wù)器間的數(shù)據(jù)共享等,還可合并子網(wǎng)和網(wǎng)絡(luò)附接存儲(chǔ)(NAS:network-attachedstorage)系統(tǒng)。3.2.3網(wǎng)絡(luò)設(shè)備常見網(wǎng)絡(luò)設(shè)備主要有網(wǎng)卡、集線器、交換機(jī)、路由器、中繼器、網(wǎng)橋、網(wǎng)關(guān)、防火墻和網(wǎng)線等網(wǎng)絡(luò)連接設(shè)備和傳輸介質(zhì)等。其中幾種主要設(shè)備如下。

1)集線器主要功能是對(duì)接收到的信號(hào)進(jìn)行再生整形放大,以擴(kuò)大網(wǎng)絡(luò)的傳輸距離,同時(shí)把所有節(jié)點(diǎn)集中在以其為中心的節(jié)點(diǎn)上。集線器工作于物理層,采用CSMA/CD(CarrierSenseMultipleAccess/CollisionDetection,在以太網(wǎng)中使用隨機(jī)爭(zhēng)用型的介質(zhì)訪問控制方法,即沖突檢測(cè)的載波監(jiān)聽多路訪問方法的一種協(xié)議)介質(zhì)訪問控制機(jī)制。集線器可分為5種不同類型。(1)單中繼網(wǎng)段集線器(2)多網(wǎng)段集線器(3)端口交換式集線器(4)網(wǎng)絡(luò)互聯(lián)集線器(5)交換式集線器

目前,集線器和交換機(jī)的界限已變得模糊。交換式集線器有一個(gè)核心交換式背板,采用一個(gè)純粹的交換系統(tǒng)代替?zhèn)鹘y(tǒng)的共享介質(zhì)中繼網(wǎng)段。一些局域網(wǎng)中集線器已被交換機(jī)代替。2)交換機(jī)

switch是完成信息交換功能的設(shè)備。擁有高帶寬總線和內(nèi)部交換矩陣,端口都掛接總線,控制電路收到數(shù)據(jù)包后,處理端口查找內(nèi)存中的地址對(duì)照表,確定目的MAC的網(wǎng)卡所掛接的端口,通過交換矩陣將數(shù)據(jù)包傳送到目的端口。

目的MAC若不在于其廣播端口中,接收端口回應(yīng)后交換“學(xué)習(xí)”新的地址,添加到內(nèi)部MAC地址表中。通過在數(shù)據(jù)幀的始發(fā)方和目標(biāo)接收方之間建立臨時(shí)的交換路徑,使數(shù)據(jù)幀由源地址到達(dá)目的地址。交換機(jī)可將網(wǎng)絡(luò)分段,通過MAC地址表,允許必要網(wǎng)絡(luò)流量通過。通過過濾和轉(zhuǎn)發(fā),隔離廣播風(fēng)暴,減少誤包和錯(cuò)包,避免共享沖突。三層交換機(jī)是具有部分路由器功能的交換機(jī),功能是加快局域網(wǎng)內(nèi)部的數(shù)據(jù)交換。路由功能可做到一次路由,多次轉(zhuǎn)發(fā)。數(shù)據(jù)包轉(zhuǎn)發(fā)等過程由硬件實(shí)現(xiàn),路由信息更新、路由表維護(hù)、路由計(jì)算、路由確定等功能,由軟件實(shí)現(xiàn)。三層交換技術(shù)就是二層交換技術(shù)+三層轉(zhuǎn)發(fā)技術(shù)。

傳統(tǒng)交換技術(shù)是在OSI網(wǎng)絡(luò)標(biāo)準(zhǔn)模型第二層

數(shù)據(jù)鏈路層進(jìn)行的,三層交換技術(shù)是在網(wǎng)絡(luò)模型中的第三層實(shí)現(xiàn)了數(shù)據(jù)包的高速轉(zhuǎn)發(fā),既可實(shí)現(xiàn)網(wǎng)絡(luò)路由功能,又可根據(jù)不同網(wǎng)絡(luò)狀況達(dá)到最優(yōu)網(wǎng)絡(luò)性能。

3)路由器

Router是將一個(gè)網(wǎng)絡(luò)的數(shù)據(jù)包傳遞到另一網(wǎng)絡(luò),實(shí)現(xiàn)網(wǎng)絡(luò)間互聯(lián)的設(shè)備,它根據(jù)信道情況自動(dòng)選擇和設(shè)定路由,以最佳路徑,按順序發(fā)送信號(hào)。

路由和交換的主要區(qū)別是交換發(fā)生在OSI第二層,路由發(fā)生在第三層,即網(wǎng)絡(luò)層。該區(qū)別決定了路由和交換在傳輸信息過程中需用不同的控制信息,所以兩者間實(shí)現(xiàn)各自功能的方式不同。路由器用于連接多個(gè)邏輯上分開的網(wǎng)絡(luò)或子網(wǎng)。當(dāng)數(shù)據(jù)從一個(gè)子網(wǎng)傳輸?shù)搅硪蛔泳W(wǎng)時(shí),可通過路由功能來完成。因此,路由器具有判斷網(wǎng)絡(luò)地址和選擇IP路徑的功能,它能在多網(wǎng)互聯(lián)環(huán)境中,建立靈活連接,用不同的數(shù)據(jù)分組和介質(zhì)訪問方法連接各子網(wǎng)。路由器分本地和遠(yuǎn)程路由器。路由器通過路由決定數(shù)據(jù)轉(zhuǎn)發(fā),轉(zhuǎn)發(fā)策略稱為路由選擇(routing)。作為不同網(wǎng)絡(luò)間互連的樞紐,路由器系統(tǒng)構(gòu)成了基于TCP/IP的網(wǎng)絡(luò)的主體脈絡(luò),構(gòu)成了Internet的骨架。4)中繼器由于存在傳輸損耗,線路上的信號(hào)功率會(huì)衰減,造成信號(hào)失真,導(dǎo)致接收錯(cuò)誤。RPrepeater用于兩個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)間物理信號(hào)的雙向轉(zhuǎn)發(fā),在點(diǎn)間按位傳遞信息,完成信號(hào)復(fù)制、調(diào)整和放大,以此延長(zhǎng)網(wǎng)絡(luò)長(zhǎng)度,實(shí)現(xiàn)物理線路遠(yuǎn)程延續(xù)。通常,中繼器兩端連接的是相同的媒體,有的中繼器也可完成不同媒體的轉(zhuǎn)接。

(1)優(yōu)點(diǎn):1.?dāng)U大通信距離。2.增加了節(jié)點(diǎn)的最大數(shù)目。3.各個(gè)網(wǎng)段可使用不同的通信速率。4.提高了可靠性。當(dāng)網(wǎng)絡(luò)出現(xiàn)故障時(shí),一般只影響個(gè)別網(wǎng)段。5.性能得到改善。(2)缺點(diǎn):1.中繼器對(duì)收到被衰減的信號(hào)再生到轉(zhuǎn)發(fā),增加了延時(shí)。2.CAN(ControllerAreaNetwork)即控制器局域網(wǎng)總線(一種廣泛用于工業(yè)自動(dòng)化、工業(yè)設(shè)備等領(lǐng)域的現(xiàn)場(chǎng)總線)的MAC子層并沒有流量控制功能。當(dāng)網(wǎng)絡(luò)負(fù)荷大時(shí),可能因中繼器中緩沖區(qū)的存儲(chǔ)空間不夠而發(fā)生溢出,產(chǎn)生幀丟失現(xiàn)象。3.中繼器若出現(xiàn)故障,對(duì)相鄰兩個(gè)子網(wǎng)的工作都將產(chǎn)生影響。3.3商務(wù)系統(tǒng)軟件和開發(fā)工具3.3.1靜態(tài)網(wǎng)頁(yè)及其開發(fā)技術(shù)1)靜態(tài)網(wǎng)頁(yè)是指其對(duì)訪問者是單向、固定的,訪問者不能改變網(wǎng)頁(yè)內(nèi)容與網(wǎng)站交互。若要改變網(wǎng)頁(yè)內(nèi)容,須通過網(wǎng)站管理員修改Web服務(wù)器上的HTML文件。動(dòng)態(tài)網(wǎng)頁(yè)對(duì)訪問者是雙向、動(dòng)態(tài)可變的,訪問者可通過與網(wǎng)站交互獲取不同的頁(yè)面內(nèi)容,有限地更新Web服務(wù)器上的內(nèi)容。形式上,靜態(tài)網(wǎng)頁(yè)是以html、htm、Shtml、xml等擴(kuò)展名的網(wǎng)頁(yè)文件。靜態(tài)網(wǎng)頁(yè)的制件只需相關(guān)工具進(jìn)行圖文編輯就可,動(dòng)態(tài)網(wǎng)頁(yè)的開發(fā)則須進(jìn)行程序設(shè)計(jì)。

兩者關(guān)聯(lián):靜態(tài)網(wǎng)頁(yè)是動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)的基礎(chǔ),大多數(shù)動(dòng)態(tài)網(wǎng)頁(yè)通過在靜態(tài)網(wǎng)頁(yè)中插入相關(guān)程序,或生成靜態(tài)網(wǎng)頁(yè)的方式來實(shí)現(xiàn)的。

靜態(tài)網(wǎng)頁(yè)中可包含文本、圖像、聲音、FLASH動(dòng)畫、客戶端腳本和ActiveX控件及JAVA小程序等,是網(wǎng)站建設(shè)的基礎(chǔ)。動(dòng)態(tài)網(wǎng)站也可采用靜動(dòng)結(jié)合的原則,適合采用動(dòng)態(tài)網(wǎng)頁(yè)的地方用動(dòng)態(tài)網(wǎng)頁(yè),如果必要使用靜態(tài)網(wǎng)頁(yè),則可考慮用靜態(tài)網(wǎng)頁(yè)的方法來實(shí)現(xiàn)。2)常見的靜態(tài)網(wǎng)頁(yè)開發(fā)技術(shù)(1)HTML語言HTML是最常見的靜態(tài)網(wǎng)頁(yè)開發(fā)技術(shù)。HTML(HyperTextMark-upLanguage)是超文本標(biāo)記語言,是www的描述語言。HTML的結(jié)構(gòu)包括頭部(Head)和主體(Body)兩大部分,其中頭部描述瀏覽器所需的信息,主體則包含所要說明的具體內(nèi)容。

HTML中定義了一系列的標(biāo)簽,它用各種標(biāo)簽來標(biāo)志文件屬性和超鏈接信息。根據(jù)HTML語法編寫的文件稱為HTML文件,HTML文件是一個(gè)純文本文件,可使用任何文本編輯器進(jìn)行編寫,擴(kuò)展名為.html或htm。

(2)XML語言eXtensibleMarkupLanguage是可擴(kuò)展標(biāo)志語言,也是SGML(TheStandardGeneralizedMarkupLanguage)的一個(gè)簡(jiǎn)化子集。SGML過于龐大與復(fù)雜,導(dǎo)致HTML誕生;HTML無法滿足日益深化的Web應(yīng)用,導(dǎo)致XML的誕生。XML將SGML的豐富功能與HTML的易用性結(jié)合到Web應(yīng)用中,保留了SGML的可擴(kuò)展功能。同時(shí),XML已不再是固定的標(biāo)記,允許定義數(shù)量不限的標(biāo)記來描述文檔中的資料,允許采用嵌套的信息結(jié)構(gòu)。XML提供了直接處理Web數(shù)據(jù)的方法,著重描述Web頁(yè)面內(nèi)容。結(jié)合HTML和XML實(shí)現(xiàn)數(shù)據(jù)內(nèi)容與頁(yè)面形式分離,使Web應(yīng)用程序更容易擴(kuò)展和移植。XML是互聯(lián)網(wǎng)中跨平臺(tái)、依賴內(nèi)容的技術(shù),它使用一系列簡(jiǎn)單的標(biāo)記描述數(shù)據(jù)。標(biāo)記可方便地建立,簡(jiǎn)單且易于掌握和使用。同時(shí),XML又不是HTML的替代品,它是描述數(shù)據(jù)的,針對(duì)的重點(diǎn)是:什么是數(shù)據(jù),如何存放數(shù)據(jù);HTML是用來顯示數(shù)據(jù)的,針對(duì)的重點(diǎn)是:如何格式化數(shù)據(jù),如何顯示數(shù)據(jù)。XML的主要特點(diǎn):1. 簡(jiǎn)單性

2. 可擴(kuò)展性

3. 互操作性

4.開放性

5.靈活性

6.自描述性

XML稱為現(xiàn)代電子商務(wù)語言,主要基于以下特點(diǎn):1.XML推動(dòng)了電子商務(wù)的數(shù)據(jù)標(biāo)準(zhǔn)化XML有利于數(shù)據(jù)交換和傳遞的特性,促進(jìn)了電子商務(wù)尤其是B2B的數(shù)據(jù)標(biāo)準(zhǔn)化。許多基于XML的商務(wù)數(shù)據(jù)標(biāo)準(zhǔn)和規(guī)范紛紛制定和發(fā)布,如OpenBuyingontheInternet(OBI)等,這些標(biāo)準(zhǔn)的加快了全球B2B和G2B等電子商務(wù)的發(fā)展。2.XML與EDI融合XML/EDI

B2B從傳統(tǒng)EDI轉(zhuǎn)向Web-EDI,XML標(biāo)準(zhǔn)最適合于Web開發(fā),應(yīng)用于InternetEDI可得到基于Web的EDT-XML/EDI。XML支持結(jié)構(gòu)化數(shù)據(jù),可詳細(xì)定義某個(gè)數(shù)據(jù)對(duì)象的數(shù)據(jù)結(jié)構(gòu),例如,描述產(chǎn)品,詳細(xì)定義其生產(chǎn)廠、產(chǎn)品名、產(chǎn)品號(hào)、產(chǎn)地等信息,這種定義不僅為標(biāo)記產(chǎn)品提供方便,且使得按生產(chǎn)廠、產(chǎn)品名等排序和查詢變得更方便。XML/EDI還引進(jìn)了模板(Template),解決了EDI存在的映射問題。模板描述的不是消息的數(shù)據(jù),而是消息的結(jié)構(gòu)及如何解釋消息,能做到無須編程就可實(shí)現(xiàn)消息的映射。通過模板,用戶可得到對(duì)其環(huán)境的最佳集成,模板可以存儲(chǔ)在別處,需要時(shí)動(dòng)態(tài)地結(jié)合到本地應(yīng)用程序中。

XML大大降低了數(shù)據(jù)管理和交換的成本。傳統(tǒng)的EDI是通過使用SMTP和FTP來進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換的,XML是專為互聯(lián)網(wǎng)通信設(shè)計(jì)的,它的強(qiáng)大之處在于它具有一套統(tǒng)一的數(shù)據(jù)格式,可以使數(shù)據(jù)管理和交換的成本更低,也更易于管理。3.應(yīng)用于無線通信WML

無線應(yīng)用協(xié)議(WAP)包括兩個(gè)部分:一個(gè)是通信部分,負(fù)責(zé)傳輸數(shù)據(jù);另一個(gè)是WML(WirelessMakeupLanguage,無線注標(biāo)語言),可在具有WAP功能的微型瀏覽器的小屏幕上發(fā)指信息。WML類似于HTML語法,是WAP規(guī)范中的一部分,它延伸自XML,WML是XML用于無線應(yīng)用的特定實(shí)例。WML完全符合XML的規(guī)則,用于標(biāo)記和說明WAP移動(dòng)終端收發(fā)的Internet信息和用戶接口。3)靜態(tài)網(wǎng)頁(yè)開發(fā)工具

靜態(tài)網(wǎng)頁(yè)設(shè)計(jì)時(shí)常用一些可視化的網(wǎng)頁(yè)編寫工具,提供網(wǎng)站管理、編輯HTML、發(fā)布網(wǎng)頁(yè)、數(shù)據(jù)庫(kù)集成、支持動(dòng)態(tài)網(wǎng)頁(yè)、所見即所得等功能,簡(jiǎn)化頁(yè)面設(shè)計(jì)和網(wǎng)站開發(fā)的工作。(1)FrontPageFrontPage是微軟推出的網(wǎng)頁(yè)設(shè)計(jì)、制作、發(fā)布、管理的軟件。它提供一個(gè)所見即所得的主頁(yè)編輯方式,集編輯、代碼、預(yù)覽三種模式于一身,具有良好的表格控制能力。

v微軟已將FrontPage被兩款更專業(yè)的網(wǎng)頁(yè)設(shè)計(jì)工具所取代:ExpressionWeb和SharepointDesigner,將其融合到微軟Office中作為其組件的一部分。(2)DreamweaverDreamweaver是Macromedia公司開發(fā)的集網(wǎng)頁(yè)制作和管理網(wǎng)站于一身的所見即所得的網(wǎng)頁(yè)編輯器,是第一套針對(duì)網(wǎng)頁(yè)設(shè)計(jì)師發(fā)展的視覺化網(wǎng)頁(yè)開發(fā)工具,可方便地制作出跨平臺(tái)和跨越瀏覽器的動(dòng)感網(wǎng)頁(yè)。Dreamweaver,F(xiàn)lash及針對(duì)專業(yè)網(wǎng)頁(yè)圖像設(shè)計(jì)的Fireworks,稱為網(wǎng)頁(yè)三劍客。Dreamweaver與FrontPage有如下不同之處。1.FrontPage缺少動(dòng)態(tài)元素,實(shí)現(xiàn)的是簡(jiǎn)單頁(yè)面間的跳轉(zhuǎn),使用不如Dreamweaver廣泛。2.Dreamweaver設(shè)計(jì)可使用框架、動(dòng)畫軸、表單、按鈕等頁(yè)面元素,它們可以使頁(yè)面元素更豐富,給瀏覽者更美的視覺效果。3.Dreamweaver還經(jīng)常使用Fireworks制作和處理的圖片和Flash制作的動(dòng)畫。4.Dreamweaver允許全文檢索的頁(yè)面。

3.3.2動(dòng)態(tài)網(wǎng)頁(yè)開發(fā)技術(shù)

1)動(dòng)態(tài)網(wǎng)頁(yè)概念

動(dòng)態(tài)網(wǎng)頁(yè)與靜態(tài)網(wǎng)頁(yè)的本質(zhì)區(qū)別是其能與用戶進(jìn)行交互。電子商務(wù)網(wǎng)站應(yīng)能與客戶交互,并提供后臺(tái)數(shù)據(jù)庫(kù)的管理和控制等服務(wù)的動(dòng)態(tài)信息。動(dòng)態(tài)網(wǎng)頁(yè)可實(shí)時(shí)顯示網(wǎng)站資源的更新信息,可進(jìn)行用戶與企業(yè)之間動(dòng)態(tài)的數(shù)據(jù)交換。如供應(yīng)商的產(chǎn)品有不同規(guī)格、款式和型號(hào)眾多時(shí),如以靜態(tài)網(wǎng)頁(yè)來表達(dá)時(shí),需要制作大量的靜態(tài)頁(yè)面,工作量大,管理與維護(hù)煩雜,客戶訪問也不方便。

而用動(dòng)態(tài)網(wǎng)頁(yè)表達(dá)時(shí),當(dāng)用戶發(fā)出范圍請(qǐng)求(如標(biāo)價(jià)為2000~3000元)時(shí),動(dòng)態(tài)網(wǎng)頁(yè)就會(huì)執(zhí)行相應(yīng)的業(yè)務(wù)數(shù)據(jù)處理,列出所有符合條件的商品。同樣,從商品查詢、用戶注冊(cè)、在線商洽、商譽(yù)排序乃至建立商務(wù)網(wǎng)站等,動(dòng)態(tài)網(wǎng)頁(yè)都勝任。同時(shí),動(dòng)態(tài)網(wǎng)頁(yè)又是連接商務(wù)表達(dá)層和商務(wù)邏輯層的橋梁,服務(wù)器端的動(dòng)態(tài)網(wǎng)頁(yè)通過調(diào)用應(yīng)用服務(wù)器上的商務(wù)邏輯,實(shí)現(xiàn)了完整意義上的電子商務(wù)功能。2)動(dòng)態(tài)網(wǎng)頁(yè)開發(fā)技術(shù)動(dòng)態(tài)網(wǎng)頁(yè)實(shí)現(xiàn)的技術(shù),分為瀏覽器端和服務(wù)器端動(dòng)態(tài)網(wǎng)頁(yè)開發(fā)技術(shù)。如動(dòng)態(tài)HTML、JavaScript、VBScript、ASP,PHP和JSP等,具體如下。

(1)動(dòng)態(tài)HTML(DHTML)DynamicHTML是HTML、CSS和客戶端腳本的集成,即頁(yè)面中包括html+css+javascript或其它客戶端腳本,其中CSS和客戶端腳本是直接寫入頁(yè)面而不是其鏈接文件。DHTML只是一種將已有網(wǎng)頁(yè)技術(shù)、語言標(biāo)準(zhǔn)的整合運(yùn)用,制作出能在下載后仍然能實(shí)時(shí)變換頁(yè)面元素效果的網(wǎng)頁(yè)設(shè)計(jì)概念。

構(gòu)成DHTML的相關(guān)技術(shù):1.客戶端腳本語言(ClientSideScriptingLanguage)運(yùn)用客戶端編寫腳本(如JavaScript和VBScript)來使HTML產(chǎn)生變化,腳本是一系列控制計(jì)算機(jī)程序的組合,可實(shí)現(xiàn)一定的邏輯分支等。腳本程序執(zhí)行時(shí),系統(tǒng)解釋器將其翻譯成機(jī)器可識(shí)別的指令,并順序執(zhí)行。腳本通常由應(yīng)用程序臨時(shí)調(diào)用執(zhí)行,能減小網(wǎng)頁(yè)規(guī)模并提高網(wǎng)頁(yè)瀏覽速度,還可豐富網(wǎng)頁(yè)的表現(xiàn),如動(dòng)畫、聲音等。2.文檔對(duì)象模型(DOM)

文檔對(duì)象模型(DocumentObjectModel,DOM)是動(dòng)態(tài)HTML的核心,它體現(xiàn)網(wǎng)頁(yè)元素的等級(jí)關(guān)系,這些元素在指定

時(shí)間在瀏覽器上呈現(xiàn)。DOM包括時(shí)空背景信息,如日期、時(shí)間;包括瀏覽器自身屬性,如其版本號(hào);包括窗口自身屬性,如網(wǎng)頁(yè)的URL;最后還包括各HTML元素,如<p>標(biāo)簽,divs,或表格。通過將DOM向動(dòng)態(tài)DHTML語言公開,瀏覽器能使網(wǎng)頁(yè)更多的功能元素發(fā)揮作用,如日期、時(shí)間之類元素不能自動(dòng)變換,它也可以通過腳本修改其他元素來完成。

DOM中指定元素進(jìn)行變換的部分稱為事件模型(EventModel)。“事件”指一系列對(duì)頁(yè)面的動(dòng)作,如將鼠標(biāo)在一頁(yè)面元素上移動(dòng)(Onmouseover)、網(wǎng)頁(yè)發(fā)布(Onload)、提交反饋表格(Onsubmit)、單擊反饋表輸入?yún)^(qū)(Onfocus)等。3.層疊樣式表(CascadingStyleSheets,CSS)CSS屬于DOM,其屬性可通過動(dòng)態(tài)HTML編寫語言體現(xiàn),故能實(shí)現(xiàn)頁(yè)面外在視覺效果的所有變化。通過改變頁(yè)面元素的CSS屬性(如顏色、位置、大?。?,可實(shí)現(xiàn)諸多效果。在面向?qū)ο蟪绦蛟O(shè)計(jì)法中,頁(yè)面、段落、圖像和表格等元素都視為一個(gè)對(duì)象,然后聲明該對(duì)象的每一個(gè)實(shí)例都有一種樣式(Style),即一組屬性或顯示指令。只要聲明一次,這些屬性就會(huì)貫穿在整個(gè)網(wǎng)頁(yè)甚至整個(gè)站點(diǎn)中。如,指定一個(gè)稱為Paragraph的對(duì)象總是縮進(jìn)27個(gè)像素并且以下沉的大寫字母開頭,那么所有段落都將是同一樣式。

CSS是進(jìn)行網(wǎng)頁(yè)改變的對(duì)象,DOM是其具有變動(dòng)性的機(jī)制,而客戶端腳本是實(shí)際促成變化的程序,它們的有機(jī)綜合就是動(dòng)態(tài)HTML。(2)瀏覽器端動(dòng)態(tài)網(wǎng)頁(yè)開發(fā)技術(shù)在瀏覽器端生成動(dòng)態(tài)網(wǎng)頁(yè),常用技術(shù)主要有JavaScript、VBScript和JavaApplet等,簡(jiǎn)介如下。1.JavaScript

Web頁(yè)面處理各種事件,如鼠標(biāo)放在圖片上使其更換或放大、客戶端邏輯判斷和數(shù)據(jù)處理等,均可通過JavaScript實(shí)現(xiàn)。

其主要特點(diǎn)如下。a.可嵌入Web頁(yè)面、基于對(duì)象和事件驅(qū)動(dòng)的腳本語言。用來制作與網(wǎng)絡(luò)無關(guān)的、與用戶交互的編程語言,包含豐富的內(nèi)部對(duì)象。可將HTML和Java小程序放在Web頁(yè)面中協(xié)同工作,增強(qiáng)開發(fā)客戶端應(yīng)用的能力,擴(kuò)展瀏覽器的功能。b.是一種解釋性編程語言,一般不用在服務(wù)器端,不直接對(duì)文本和圖形操作,不具有讀寫文檔及網(wǎng)絡(luò)控制等功能,只完成一些與用戶交互的任務(wù)。源代碼發(fā)往客戶端執(zhí)行前不需編譯,而將文本格式的字符代碼發(fā)給客戶端,由瀏覽器解釋執(zhí)行。JavaScript中變量在使用前不需聲明類型,由解釋器在運(yùn)行時(shí)檢查其數(shù)據(jù)類型。c.其代碼是文本格式,可直接嵌入HTML文檔中,可動(dòng)態(tài)裝載。2. VBScript

是一種腳本語言,源于VisualBasic,為增強(qiáng)網(wǎng)絡(luò)安全性,VBScript減少了VB中的一些功能,如APIcalls、classes等。由于該語言使用簡(jiǎn)單,代碼短小,最常用于動(dòng)態(tài)網(wǎng)頁(yè)的制作中,容易掌握。VBScript比BASIC語言的成熟版本既容易又難于使用。編制簡(jiǎn)單程序時(shí),腳本語言易使用,其句法較簡(jiǎn)單。但簡(jiǎn)單句法也使開發(fā)大應(yīng)用程序變得較困難。

可在HTML文件中直接嵌入VBScript腳本,這能擴(kuò)展HTML,使它不僅是一種頁(yè)面格式語言。帶有VBScript腳本的網(wǎng)頁(yè)在每次下載到瀏覽器時(shí)都可不同,且可以對(duì)用戶的操作作出反應(yīng)。VBScript和JavaScript都是為了提高網(wǎng)頁(yè)的交互性,增強(qiáng)HTML的功能而開發(fā)的,故它們很相似,掌握其中之一便可輕松掌握另一種。3. JavaApplet

有些商務(wù)系統(tǒng)要求有復(fù)雜的用戶界面和計(jì)算,客戶端和服務(wù)器端的交互非常頻繁且傳輸數(shù)據(jù)量大,數(shù)據(jù)關(guān)系復(fù)雜,對(duì)結(jié)構(gòu)化要高等。此時(shí),HTML和JavaScript就顯不足,而可選技術(shù)之一是JavaApplet,簡(jiǎn)稱Applet。Applet是嵌入HTML頁(yè)面在瀏覽器中執(zhí)行的Java程序,包含一個(gè)主類(繼承Java.Applet類),0或多個(gè)其他類。Applet可單獨(dú)工作,也可和HTML及JavaScript組合使用。a.單獨(dú)使用AppletApplet可發(fā)揮Java的多數(shù)特性。如可使用JDBC、RMI等技術(shù)訪問數(shù)據(jù)庫(kù),LDAP目錄和其他組件等后端信息;可用Applet完成數(shù)據(jù)訪問和業(yè)務(wù)邏輯??蛻舳薃pplet可包含較復(fù)雜的業(yè)務(wù)邏輯和用戶界面;安裝、發(fā)布應(yīng)用簡(jiǎn)單,只需在Web服務(wù)器上發(fā)布一次。b.Applet和服務(wù)器端的Servlet、JSP、CGI等程序配合使用

該模式將后端資源及業(yè)務(wù)邏輯等封裝到服務(wù)器端程序中,Applet僅處理前端工作,將事務(wù)邏輯從界面中分離出來,使應(yīng)用更靈活,易升級(jí),易于設(shè)計(jì)和維護(hù)。Applet和服務(wù)器端程序可用HTTP協(xié)議交換字節(jié)流或?qū)ο罅?,其中封裝了相關(guān)的業(yè)務(wù)數(shù)據(jù)。Java提供的URL和URLConnection類使得通過HTTP協(xié)議讀取數(shù)據(jù)變得很容易。

優(yōu)點(diǎn):

如采用三層結(jié)構(gòu),則結(jié)構(gòu)清晰,系統(tǒng)安全性高,可實(shí)現(xiàn)復(fù)雜的用戶界面。前端可完成復(fù)雜計(jì)算,能滿足其和服務(wù)器端交互活動(dòng)頻繁、數(shù)據(jù)傳輸量大、數(shù)據(jù)結(jié)構(gòu)復(fù)雜的要求。Applet的優(yōu)點(diǎn)與缺點(diǎn)如下。a.Applet的優(yōu)點(diǎn)采用Java,具有幾乎所有Java程序的功能,可制作圖形及應(yīng)用程序的用戶界面,使用Java豐富的網(wǎng)絡(luò)編程類,實(shí)現(xiàn)HTML和JavaScript不能滿足的需求等。Applet保存在服務(wù)器上,每次瀏覽器訪問包含Applet網(wǎng)頁(yè)時(shí),客戶機(jī)會(huì)自動(dòng)下載Applet文件并執(zhí)行。Applet和其類文件通過標(biāo)準(zhǔn)的HTTP請(qǐng)求傳輸?shù)娇蛻舳说臑g覽器上,故可越過Web頁(yè)面數(shù)據(jù)所在平臺(tái)的防火墻發(fā)送。Applet應(yīng)用的更新類似于HTML網(wǎng)頁(yè)組成的應(yīng)用的更新,只需在服務(wù)器上安裝最新的Applet類和支持庫(kù),安裝和維護(hù)簡(jiǎn)單,成本較低。b.Applet的缺點(diǎn)每次訪問Applet時(shí),須將Applet類和支持庫(kù)下載到客戶機(jī),如類和庫(kù)大,則初始化較慢。

Applet代碼從Web主機(jī)上下載并在瀏覽器中執(zhí)行。一些惡意的Applet可能對(duì)客戶機(jī)進(jìn)行破壞,影響其因安全性。

Applet可與提供Applet類的主機(jī)建立網(wǎng)絡(luò)連接,但Applet不能建立或接受其他外來的Socket連接。對(duì)開發(fā)者有一定的入門要求和技術(shù)難度,要求設(shè)計(jì)者掌握面向?qū)ο蟮姆椒?;同時(shí),Applet下載到客戶端后可獲取其源代碼,程序安全性差,技術(shù)易泄密等。(3)服務(wù)器端腳本開發(fā)技術(shù)客戶端技術(shù)受安全和功能性制約,于是出現(xiàn)了如下一些服務(wù)器端的動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)。1.Java面向?qū)ο蟮腏ava語言具備一次編程、任何地方運(yùn)行的能力,成為服務(wù)提供商和系統(tǒng)集成商用支持多種操作系統(tǒng)和硬件平臺(tái)的首選解決方案。如今,Java已成信息技術(shù)的主流之一,在各種形態(tài)的電子商務(wù)應(yīng)用中廣泛的應(yīng)用。2.ASPASP(ActiveServerPage)動(dòng)態(tài)服務(wù)器頁(yè)面,是微軟的服務(wù)器端腳本環(huán)境,內(nèi)含于IIS中,通過ASP可結(jié)合HTML網(wǎng)頁(yè)、ASP指令和ActiveX元件建立動(dòng)態(tài)、交互且高效的Web服務(wù)器應(yīng)用程序。ASP技術(shù)利用插件和API簡(jiǎn)化了Web應(yīng)用程序的開發(fā)。優(yōu)點(diǎn)是可包括HTML標(biāo)簽,可直接存取數(shù)據(jù)庫(kù)及使用無限擴(kuò)充的ActiveX控件,在編程上更富靈活性。

ASP采用面向?qū)ο蟮奶卣骷皩?duì)ActiveX控件的擴(kuò)展,對(duì)Web數(shù)據(jù)庫(kù)的動(dòng)態(tài)訪問采用ADO(ActiveXDataObjects)方式,即通過建立對(duì)象將訪問數(shù)據(jù)庫(kù)的細(xì)節(jié)抽象。ADO本身具有高速、簡(jiǎn)便及低內(nèi)存開銷的特點(diǎn)。ASP內(nèi)部提供了兩種腳本引擎:JScript和VBScript,默認(rèn)的腳本語言為VBScript,用于ASP的編碼開發(fā),使熟悉Microsoft產(chǎn)品的開發(fā)人員能夠很容易使用。ASP的優(yōu)缺點(diǎn)、工作原理和步驟如下。a.優(yōu)點(diǎn)

使用VBScript、JScript等簡(jiǎn)單腳本語言,結(jié)合HTML代碼即可快速完成網(wǎng)站應(yīng)用程序。使用普通文本編輯器即可進(jìn)行編輯設(shè)計(jì)與瀏覽器無關(guān),用戶端只要使用可執(zhí)行HTML代碼的瀏覽器,即可瀏覽ASP設(shè)計(jì)的網(wǎng)頁(yè)內(nèi)容。其腳本語言服務(wù)器端執(zhí)行,瀏覽器不需執(zhí)行這些腳本語言。能與任何ActiveXScripting語言相容。ActiveX服務(wù)器元件具有無限可擴(kuò)充性,可使用VisualBasic、Java、VisualC++、COBOL等編程語言來編寫用戶所需的ActiveX服務(wù)器元件。ASP源程序不會(huì)被傳到客戶端瀏覽器,可避免所寫源程序被他人竊取,提高安全性。

是一種解釋腳本語言環(huán)境而無需編譯,在腳本代碼中做的改動(dòng),立刻就可在瀏覽器中呈現(xiàn)。

b. ASP的缺點(diǎn)

基本局限于微軟操作系統(tǒng)平臺(tái)上,工作環(huán)境也是微軟的IIS應(yīng)用程序結(jié)構(gòu),故不容易實(shí)現(xiàn)跨平臺(tái)Web服務(wù)器程序開發(fā);運(yùn)行在UNIX系統(tǒng)的Web服務(wù)器上其應(yīng)用范圍受到很大限制。

c. 工作原理ASP提供了嵌入HTML的腳本程序運(yùn)行環(huán)境,程序中可包含純文本、HTML標(biāo)記及腳本命令。只需將.asp程序放在Web服務(wù)器的虛擬目錄下,就可訪問。ASP程序設(shè)計(jì)的重點(diǎn)在于腳本編寫。腳本由一系列的命令組成,可將一個(gè)值賦給一個(gè)變量,命令Web服務(wù)器發(fā)送一個(gè)值到客戶端瀏覽器,還可將一系列命令定義成一個(gè)過程。

d.ASP的工作步驟如下。

用戶瀏覽器網(wǎng)址欄中添入ASP文件,觸發(fā)申請(qǐng)后瀏覽器將此ASP要求發(fā)給IIS。WebServer接收申請(qǐng)要求并從磁盤或者內(nèi)存中接收正確的ASP文件。WebServer將此文件發(fā)送到一個(gè)ASP.DLL的特定文件中。ASP文件將被執(zhí)行并根據(jù)命令要求生成相應(yīng)的靜態(tài)主頁(yè)。HTML主頁(yè)被送回瀏覽器。

用戶瀏覽器解釋執(zhí)行HTML主頁(yè)并顯示在瀏覽器上。一個(gè)ASP并不一定每次都要重新編譯解釋,如再次接收以前的請(qǐng)求且無任何變化時(shí),ASP會(huì)從緩存中提出結(jié)果而不是再次運(yùn)行。

3.PHPHypertextPreprocessor即超文本預(yù)處理器,用于創(chuàng)建動(dòng)態(tài)網(wǎng)站,是一種服務(wù)器端HTML嵌入式腳本描述語言。特色在于使Internet網(wǎng)頁(yè)上對(duì)數(shù)據(jù)庫(kù)操作更方便。PHP為各種流行的數(shù)據(jù)庫(kù),包括Linux平臺(tái)中的PostgreSQL,mSQL、MySQL、Solid和Oracle,以及Windows平臺(tái)的SQLServer等都設(shè)計(jì)了專門的函數(shù),使操作這些數(shù)據(jù)庫(kù)變得非常方便。特別是MySQL數(shù)據(jù)庫(kù)的普及,形成了使用PHP必用MySQL的習(xí)慣,使之發(fā)展進(jìn)一步加快。

PHP在大多數(shù)Unix平臺(tái)、GNU/Linux和Windows平臺(tái)上運(yùn)行,用其編寫的程序可方便地進(jìn)行系統(tǒng)間移植,作出的動(dòng)態(tài)頁(yè)面將程序嵌入到HTML文檔中執(zhí)行,效率大大高于完全生成HTML標(biāo)記的CGl;PHP還可以執(zhí)行編譯后代碼,可以達(dá)到加密和優(yōu)化代碼運(yùn)行,使代碼運(yùn)行更快。PHP的優(yōu)缺點(diǎn)a. PHP優(yōu)點(diǎn):支持多種系統(tǒng)平臺(tái)。這包括微軟的各種Windows平臺(tái),各種版本的Unix系統(tǒng),包括Linux,Solaris和ScoUnix平臺(tái)等。開放源碼,具有自由軟件特性。PHP使用時(shí)不會(huì)有道德及法律上的困擾,并可自行加入使用者所需的功能。版本更新快。相比微軟數(shù)年才更新一次的ASP而言,PHP數(shù)周就更新一版。語法簡(jiǎn)單,容易與現(xiàn)有的網(wǎng)頁(yè)整合。PHP提供交互功能,修改成本低,動(dòng)態(tài)創(chuàng)建圖像,讓網(wǎng)頁(yè)美工及程序開發(fā)人員能各司其職。具有豐富的功能。PHP從結(jié)構(gòu)化特性、對(duì)象式設(shè)計(jì)、數(shù)據(jù)庫(kù)處理、網(wǎng)絡(luò)接口使用到安全編碼機(jī)制等,加之具有良好的數(shù)據(jù)庫(kù)支持,使之幾乎囊括所有建立網(wǎng)站所需的功能。系統(tǒng)移植速度快。PHP只需少許修改,就可將整個(gè)網(wǎng)站從Windows平臺(tái)上轉(zhuǎn)移到Unix平臺(tái)上。b. PHP的缺點(diǎn)PHP的弱點(diǎn)主要是其是一種解釋型語言,不支持多線程結(jié)構(gòu),支持平臺(tái)和連接的數(shù)據(jù)庫(kù)都有限,特別是在支持的標(biāo)準(zhǔn)方面存在不足。

PHP的開源性使其版本更新很快,許多弱點(diǎn)在其發(fā)展中正不斷被改進(jìn)和克服。

c.PHP的工作環(huán)境PHP程序開發(fā)環(huán)境:程序源碼編輯環(huán)境,PHP自身工作環(huán)境,支持PHP的瀏覽器環(huán)境。

Linux對(duì)PHP的匹配支持相當(dāng)好。在Linux的Apache中,如從源碼開始安裝,可選擇多種安裝PHP的方式,比如,可作為Apache的一個(gè)模塊,也可以作為一個(gè)CGI程序,還可對(duì)PHP定制,選擇所支持功能。PHP還移植到了Windows體系中,Windows一般使用IIS作為Web服務(wù)器,一些曾在Linux下運(yùn)行的程序如Apache和MySQL等軟件也為Windows下PHP工作環(huán)境提供了新的組成方案。在客戶端瀏覽器方面,各種瀏覽器都可以獲得比較好的效果。

4.Servlet簡(jiǎn)介

是源于Server+Applet的小服務(wù)器程序,可視為一個(gè)Java類,運(yùn)行在一個(gè)服務(wù)器端的Servlet容器內(nèi),通過容器提供會(huì)話管理和對(duì)象生命周期管理。相對(duì)于其他服務(wù)器端開發(fā)技術(shù),它效率更高、更易編程、功能更強(qiáng)、更安全且與可移植,成為主流的動(dòng)態(tài)網(wǎng)站技術(shù)。a. Servlet的優(yōu)點(diǎn)

高性能。一個(gè)Servlet在第一次初始化時(shí)裝載并駐留在內(nèi)存中,以后直接從內(nèi)存中運(yùn)行,不像CGI程序每次都要重新裝入內(nèi)存。Servlet以單實(shí)例多線程方式工作,一個(gè)新請(qǐng)求到達(dá)后Servlet實(shí)例開啟一個(gè)新線程來為其服務(wù),而不像CGI需要開啟一個(gè)進(jìn)程。Servlet繼承了Java的所有優(yōu)勢(shì),包括易升級(jí)以及平臺(tái)無關(guān)性,編程時(shí)可調(diào)用Java提供的大量的APl。b. Servletr的工作原理

一個(gè)Servlet在服務(wù)器端被調(diào)用后會(huì)載入Server容器(或Servlet引擎的程序)來解釋執(zhí)行,通過Servlet的功能來擴(kuò)展服務(wù)器功能。Servlet在服務(wù)器端接收客戶端請(qǐng)求并響應(yīng),兩者均通過HTTP協(xié)議來完成。Web服務(wù)器和Servlet容器可以是兩個(gè)獨(dú)立的松耦合應(yīng)用程序,如圖3-2;也可是緊密集成的一個(gè)應(yīng)用程序,如圖3-3。

圖3-2和圖3-3顯示了基于ServIet和JSP(Servlet變體)的Web應(yīng)用程序,包括若干Servlet或JSP文件,以及HTML文件和圖片等資源文件。客戶端對(duì)Servlet的訪問先到達(dá)WebServer,如訪問的是HTML文件和圖片這樣的靜態(tài)資源,WebSever會(huì)直接處理并給出響應(yīng);如訪問的是Servlet,則通過Servlet容器去執(zhí)行并給出響應(yīng)。

瀏覽器通過HTTP協(xié)議訪問WebServer,WebServer返回瀏覽器HTML格式數(shù)據(jù);客戶端應(yīng)用程序可通過HTTP協(xié)議訪問服務(wù)器端的應(yīng)用,服務(wù)器端的應(yīng)用程序通過WebServer可返回給客戶端應(yīng)用程序HTML格式的數(shù)據(jù)、XML格式的數(shù)據(jù)或應(yīng)用約定格式的數(shù)據(jù)。5.JSPJavaServerPage是一種動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)標(biāo)準(zhǔn),Servlet的擴(kuò)展,目的是簡(jiǎn)化建立和運(yùn)行動(dòng)態(tài)網(wǎng)站,是J2EE的一個(gè)關(guān)鍵技術(shù)。JSP開發(fā)的Web應(yīng)用是跨平臺(tái)的,能在Linux和其他操作系統(tǒng)上運(yùn)行。JSP在更高一層上抽象Servlet,讓常規(guī)靜態(tài)HTML與動(dòng)態(tài)產(chǎn)生的內(nèi)容結(jié)合后,作為Servlet運(yùn)行。使用JSP比Servlet更簡(jiǎn)單。如有一個(gè)支持JSP的Web服務(wù)器,就可將一個(gè)JSP文件放到任何HTML文件可放置的位置,不用編譯與打包,無需ClassPath設(shè)置,服務(wù)器就會(huì)自動(dòng)處理。a.JSP的工作原理JSP包含兩種類型文本,即靜態(tài)模型模板數(shù)據(jù),任何文本格式都可以被表示,例如HTML,SVG、WML,XML等;動(dòng)態(tài)內(nèi)容由JSP元素構(gòu)成。故JSP文件看似是一個(gè)包含了一些Java代碼的靜態(tài)HTML文件,以.jsp為后綴。當(dāng)Web服務(wù)器接收到客戶的JSP文件請(qǐng)求時(shí),它對(duì)JSP文件進(jìn)行語法分析并生成JavaServlet源文件,對(duì)其編譯,再由Servlet引擎來處理。Servlet引擎裝載這個(gè)類,處理客戶請(qǐng)求,并把結(jié)果返回客戶,過程圖3-4。以后再訪問該頁(yè)面時(shí),如文件未發(fā)生過更改,JSP引擎就直接調(diào)用已裝載的Servlet;如文件已經(jīng)修改,就會(huì)再次執(zhí)行以上重新生成Servlet并編譯和裝載過程。圖3-4調(diào)用JSP頁(yè)面的流程

b.JSP有以下特點(diǎn)。1)應(yīng)用程序邏輯和頁(yè)面顯示相分離

JSP技術(shù)用HTML或XML標(biāo)識(shí)來設(shè)計(jì)和格式化頁(yè)面,標(biāo)識(shí)或以腳本生成頁(yè)面上的動(dòng)態(tài)內(nèi)容。生成內(nèi)容的邏輯被封裝在標(biāo)識(shí)和JavaBeans組件中,并捆綁在腳本中,所有腳本都在服務(wù)器端運(yùn)行。Web管理員和頁(yè)面設(shè)計(jì)者能編輯和使用JSP頁(yè)面而不影響內(nèi)容生成。

在服務(wù)器端,JSP引擎解釋JSP標(biāo)識(shí)和腳本,生成所請(qǐng)求的內(nèi)容,并將結(jié)果以HTML(或XML)頁(yè)面形式發(fā)送回瀏覽器。既利于作者保護(hù)其代碼,又能保證任何基于HTML的Web瀏覽器的可用性。2)可重用組件

JSP頁(yè)面依賴于可重用、跨平臺(tái)的組件(JavaBeans或EnterpriseJavaBeans)來執(zhí)行應(yīng)用程序的復(fù)雜處理。開發(fā)者能共享和交換執(zhí)行操作組件,使其為更多系統(tǒng)使用。3)采用標(biāo)識(shí)JSP技術(shù)封裝了許多XML標(biāo)識(shí)中為生成動(dòng)態(tài)內(nèi)容所需的功能。JSP標(biāo)識(shí)能訪問和實(shí)例化JavaBeans組件,設(shè)置或檢索組件屬性,下載Applet執(zhí)行相關(guān)功能。通過標(biāo)識(shí)庫(kù),JSP技術(shù)可進(jìn)一步擴(kuò)展。第三方開發(fā)者可創(chuàng)建自己的標(biāo)識(shí)庫(kù),使他們能用其熟悉的工具和標(biāo)識(shí)來執(zhí)行特定功能構(gòu)件。4)適應(yīng)多平臺(tái)

幾乎所有平臺(tái)都支持Java,故JSP+JavaBeans可在所有平臺(tái)上運(yùn)行??缙脚_(tái)移植時(shí),JSP和JavaBeans甚至不用重新編譯。5)數(shù)據(jù)庫(kù)連接Java連接數(shù)據(jù)庫(kù)的技術(shù)是JDBC,通過JDBC–ODBCbridge,Java程序可訪問帶有ODBC程序的數(shù)據(jù)庫(kù)。

c.JSP與Servlet的關(guān)系JSP建立在Servlet技術(shù)基礎(chǔ)上,克服了純Servlet方案的如下問題:

1)開發(fā)和維護(hù)應(yīng)用程序要有較深的Java編程知識(shí),處理代碼和HTML元素交織。

2)改變應(yīng)用程序的外觀和風(fēng)格,或加入對(duì)某種類型客戶機(jī)(如WML客戶機(jī))的支持時(shí),需要更新并重新編譯Servlet代碼。

3)難于利用網(wǎng)頁(yè)開發(fā)工具來設(shè)計(jì)應(yīng)用程序界面。因如使用這些工具來開發(fā)網(wǎng)頁(yè)布局,生成的HTML代碼必須手工嵌入到Servlet代碼中,既耗時(shí)又易出錯(cuò)。JSP將請(qǐng)求處理和商務(wù)邏輯與外觀呈現(xiàn)分離,此時(shí)不是將HTML標(biāo)簽嵌入到程序代碼中,而將所有靜態(tài)HTML放到JSP頁(yè)面中,就像一個(gè)通常網(wǎng)頁(yè),然后加入一些JSP元素來產(chǎn)生頁(yè)面的動(dòng)態(tài)部分。對(duì)請(qǐng)求的處理可由Servlet程序來做,商務(wù)邏輯則可由JavaBeans和EJB組件來處理。將請(qǐng)求處理和商務(wù)邏輯與外觀呈現(xiàn)分開后,JSP允許將開發(fā)任務(wù)分派給擁有不同技術(shù)的人。Java程序員實(shí)現(xiàn)請(qǐng)求處理和商務(wù)邏輯,網(wǎng)頁(yè)設(shè)計(jì)師實(shí)現(xiàn)用戶界面。網(wǎng)頁(yè)設(shè)計(jì)師可使用JSP標(biāo)準(zhǔn)行為和Java組件庫(kù)來開發(fā)擁有動(dòng)態(tài)特性的Web應(yīng)用程序。

d.JSP的兩種應(yīng)用模式JSP技術(shù)規(guī)范給出了兩種使用JSP開發(fā)Web應(yīng)用的模式,主要差別在于其處理業(yè)務(wù)的流程不同。模式一如圖3-5所示,稱為JSP+JavaBeans模型。其中,JSP頁(yè)面獨(dú)自響應(yīng)請(qǐng)求并將處理結(jié)果返回給客戶,所有的數(shù)據(jù)通過JavaBean來處理,JSP實(shí)現(xiàn)頁(yè)面的表現(xiàn)。圖3-5JSP應(yīng)用模式一示意e.JSP與ASP的比較兩者都提供在HTML代碼中混合程序代碼、由語言引擎解釋執(zhí)行程序代碼的能力。在兩者環(huán)境下,HTML代碼主要負(fù)責(zé)描述信息的顯示樣式,而程序代碼則用來描述處理邏輯。普通HTML頁(yè)面只依賴于Web服務(wù)器,而兩者的頁(yè)面需要附加的語言引擎分析和執(zhí)行程序代碼。程序代碼的執(zhí)行結(jié)果被重新嵌入到HTML代碼中,然后一起發(fā)送給瀏覽器。ASP和JSP都是面向Web服務(wù)器的技術(shù),客戶端瀏覽器不需要任何附加的軟件支持。ASP的編程語言是VBScript之類的腳本語言,JSP使用的是Java,這是兩者最明顯的區(qū)別。兩種語言引擎用不同方式處理頁(yè)面中嵌入的程序代碼。在ASP下,VBScript代碼被ASP引擎解釋執(zhí)行;JSP下,代碼被編譯成Servlet并由Java虛擬執(zhí)行,這種編譯操作僅在對(duì)JSP頁(yè)面的第一次請(qǐng)求時(shí)發(fā)生。

兩者都是動(dòng)態(tài)網(wǎng)頁(yè)技術(shù),都是可嵌入HTML中的程序,不同如下:1)Web服務(wù)器支持:多數(shù)Web服務(wù)器如:Apache、Netscape和IIS等都支持JSP,只有微軟的IIS和PersonalWebServer可支持ASP。2)平臺(tái)支持:JSP具有平臺(tái)獨(dú)立性,只要Java程序可運(yùn)行的平臺(tái)都支持。Windows平臺(tái)可很好地支持ASP,但ASP難于移植到其它平臺(tái)上。3)組件模型:JSP建立在可重用、跨平臺(tái)組件(如:JavaBeans、EnterprisesJavaBeans和用戶定制的標(biāo)簽庫(kù)等組件)之上,而ASP使用的是基于Win32的COM組件模型。4)腳本語言:JSP使用Java編程語言或JavaScript作為腳本語言,而ASP使用VBScript或Jscript作為腳本語言。5)安全性:JSP使用Java安全模型,而ASP使用WindowsNT安全結(jié)構(gòu)。6)與Access數(shù)據(jù)庫(kù)的連接:JSP使用JDBC建立與Access的連接,ASP使用DataActiveObjects。7)用戶定制的標(biāo)簽:JSP可使用用戶定制標(biāo)簽庫(kù)進(jìn)行擴(kuò)充,ASP中沒有用戶定制標(biāo)簽庫(kù),不能擴(kuò)充。6.ASP.NET簡(jiǎn)介ASP的程序代碼不夠結(jié)構(gòu)化,混合了顯示界面的Tag標(biāo)記、客戶端腳本、Server端的程序代碼模塊以及設(shè)計(jì)中的標(biāo)注等,程序難維護(hù)。微軟為推廣其新一代網(wǎng)絡(luò)操作平臺(tái).NETFrameWork,開發(fā)出ASP.NET。它是一種建立在通用語言上的程序構(gòu)架,能被用于一臺(tái)Web服務(wù)器來建立強(qiáng)大的Web應(yīng)用程序。使其成為建立動(dòng)態(tài)Web應(yīng)用程序的全新技術(shù)。ASP.NET特點(diǎn)和與ASP的比較如下。a.ASP.NET的特色如下。1)簡(jiǎn)化開發(fā)

網(wǎng)頁(yè)程序大時(shí)ASP會(huì)顯復(fù)雜。ASP.NET代碼編寫的特色是將頁(yè)面邏輯和業(yè)務(wù)邏輯分開,分離程序代碼與顯示內(nèi)容,讓網(wǎng)頁(yè)更易撰寫,程序代碼更潔凈、簡(jiǎn)單。2)

語言獨(dú)立ASP網(wǎng)頁(yè)雖可用多種語言撰寫程序代碼,但只限于腳本語言,如VBScript、JScript。ASP.NET則允許使用編譯式語言,提供較好的執(zhí)行效率和跨語言兼容性,如VisualBasic.NET、C#、C++WithManageExtension、JScript.NET等。

3)

分離程序代碼和網(wǎng)頁(yè)內(nèi)容ASP.NET用事件驅(qū)動(dòng)與數(shù)據(jù)綁定的開發(fā)方式,將程序代碼與用戶界面接口分開。另外,可使用Code-Behind的方式將程序代碼和顯示的標(biāo)注分離在不同的文件中,讓程序更具可讀性。

4)提高執(zhí)行效率ASP.NET程序代碼是編譯過的,執(zhí)行時(shí)比ASP直譯方式快很多。ASP.NET也提供快取能力,能有效縮短服務(wù)器的應(yīng)答時(shí)間。5)簡(jiǎn)化部署與組態(tài)的操作ASP.NET不需考慮組件注冊(cè),直接將相關(guān)文件復(fù)制到目的機(jī)器中相應(yīng)的目錄下。在組態(tài)(Configuration)方面,ASP.NET采用易閱讀的XML組態(tài)文件Web.Config,只要將其放在Web應(yīng)用程序的相關(guān)目錄中就可完成組態(tài)操作。6)支持多種客戶端類型ASP.NET提供許多ServerControl,能自檢瀏覽器所支持的功能,自動(dòng)產(chǎn)生符合其可用的網(wǎng)頁(yè)。7)支持WebService簡(jiǎn)言之,WebService是指可跨Internet調(diào)用的應(yīng)用程序,提供重復(fù)使用功能,它能讓兩個(gè)不同的系統(tǒng)擁有一個(gè)溝通的渠道。8)增進(jìn)適用性ASP.NET在解決應(yīng)用程序故障

內(nèi)存泄漏(MemoryLeak)時(shí),能自動(dòng)重啟進(jìn)程,不至死機(jī)。任何造成內(nèi)存泄漏的程序代碼或產(chǎn)生無窮循環(huán)或未關(guān)閉使用資源的程序代碼只會(huì)影響一條線程。ASP.NET檢測(cè)到某條線程運(yùn)行失常,把新要求導(dǎo)向新線程,不再和問題線程交互。受損線程將會(huì)被自動(dòng)回收,服務(wù)器不需重啟動(dòng)來配置線程。9)增進(jìn)延展性ASP.NET使用全新的Session--State管理方式,讓應(yīng)用程序很容易地在一臺(tái)服務(wù)器生多個(gè)處理進(jìn)程中使用Session。10)更佳的安全機(jī)制ASP中惟一能使用的驗(yàn)證方式是WindowsAuthentication;ASP.NET則提供3種登錄驗(yàn)證方式:Windows、Passport和Cookie,也可使用Impersonation功能,使用登錄者的權(quán)限執(zhí)行一些程序代碼或存取資源。

11)Session可跨進(jìn)程、跨機(jī)器若使用ASP.NET,Session的狀態(tài)就可在不同機(jī)器的不同進(jìn)程上進(jìn)行維護(hù),以解決多處理進(jìn)程的Session維護(hù)問題。

3.3.3動(dòng)態(tài)網(wǎng)頁(yè)開發(fā)工具1)VisualStudio.NETVisualStudio.NET是一套完整的開發(fā)工具,用于生成ASPWeb應(yīng)用程序、XMLWebServices、桌面應(yīng)用程序和移動(dòng)應(yīng)用程序。VisualBasic.NET、VisualC++.NET、VisualC#.NET和VisualJ#.NET全都使用相同的集成開發(fā)環(huán)境(IDE),該環(huán)境允許它們共享工具并有助于創(chuàng)建混合語言解決方案。另外,這些語言利用了.NETFramework的功能,此框架提供對(duì)簡(jiǎn)化ASPWeb應(yīng)用程序和XMLWebServices開發(fā)的關(guān)鍵技術(shù)的訪問。

VisualStudio.NET集成開發(fā)環(huán)境現(xiàn)在包括開發(fā)各種智能設(shè)備應(yīng)用程序的工具。通過使用這些工具和.NETFramework精簡(jiǎn)版(.NETFramework的子集),可以在個(gè)人數(shù)字助理(PDA)、智能手機(jī)和其他資源受約束的設(shè)備中,創(chuàng)建、生成、調(diào)試和部署在.NETFramework精簡(jiǎn)版上運(yùn)行的應(yīng)用程序。

作為快速創(chuàng)建及集成XMLWeb服務(wù)和應(yīng)用程序的單一綜合工具,VisualStudio.NET在改善操作的同時(shí)極大地提高了開發(fā)人員的效率。2)JBuilder

是Borland公司開發(fā)的針對(duì)Java的開發(fā)工具。用Jbuilder可快速、有效地開發(fā)各類Java應(yīng)用。JBuilder的核心有一部分采用了VCL技術(shù),使程序的條理非常清晰。JBuilder另一個(gè)特點(diǎn)是簡(jiǎn)化了團(tuán)隊(duì)合作,可使不同地區(qū)甚至國(guó)家的人聯(lián)合開發(fā)。JBuilder的特點(diǎn)如下。1.支持最新的Java技術(shù),包括Applets、JSP/Servlets、JavaBean及EJB的應(yīng)用。2.用戶可自動(dòng)生成基于后端數(shù)據(jù)庫(kù)表的EJBJava類,JBuilder還簡(jiǎn)化了EJB的自動(dòng)部署功能。它還支持COREA,相應(yīng)的向?qū)С绦蛴兄谟脩羧娴毓芾鞩DL(InterfaceDefinitionLanguage,分布應(yīng)用程序所需的接口定義語言)和控制遠(yuǎn)程對(duì)象。3.支持各種應(yīng)用服務(wù)器。JBuilder與InpriseApplicationServer緊密集成,同時(shí)支持WebLogicServer,還有EJB1.1和EJB2.0,可快速開發(fā)J2EE的電子商務(wù)應(yīng)用。4.能用Servlets和JSP開發(fā)和調(diào)試動(dòng)態(tài)Web應(yīng)用。5.Jbuilder用純Java語言編寫,其代碼不含任何專屬代碼和標(biāo)記,它支持最新的Java標(biāo)準(zhǔn)。6.擁有專業(yè)化的圖形調(diào)試界面,支持遠(yuǎn)程調(diào)試和多線程調(diào)試,調(diào)試器支持各種JDK版本,包括J2ME/J2SE/J2EE。

JBuilder缺點(diǎn):開始通常難于把握整個(gè)程序各部分之間的關(guān)系,對(duì)硬件要求較高,內(nèi)存占用較大,運(yùn)行速度顯得較慢。3)Eclipse

是一個(gè)開放源代碼的、基于Java的可擴(kuò)展開發(fā)平臺(tái)。本身只是一個(gè)框架和一組服務(wù),用于通過插件組件構(gòu)建開發(fā)環(huán)境。

根據(jù)Eclipse的體系結(jié)構(gòu),通過開發(fā)插件,它能擴(kuò)展到任何語言的開發(fā),甚至能成為繪圖工具。Eclipse的主要特性如下。1.可以很方便地對(duì)源文件進(jìn)行導(dǎo)入和導(dǎo)出。2.源代碼的管理更加隨心所欲。3.支持團(tuán)隊(duì)開發(fā)。4.支持輔件開發(fā)功能。Eclipse專注于為高度集成的工具開發(fā)提供一個(gè)全功能的、具有商業(yè)品質(zhì)的工業(yè)平臺(tái)。由Eclipse項(xiàng)目、Eclipse工具項(xiàng)目和Eclipse技術(shù)項(xiàng)目三個(gè)項(xiàng)目組成,具體包括四部分組成EclipsePlatform、JDT、CDT和PDE。JDT支持Java開發(fā)、CDT支持C開發(fā)、PDE支持插件開發(fā)。EclipsePlatform是個(gè)開放的可擴(kuò)展IDE,提供了一個(gè)通用的開發(fā)平臺(tái),它提供建造塊和構(gòu)造并運(yùn)行集成軟件開發(fā)工具的基礎(chǔ),允許工具建造者獨(dú)立開發(fā)與其他工具無縫集成的工具,無須分辨一個(gè)工具功能在哪里結(jié)束,而另一工具功能在哪里開始。3.3.4數(shù)據(jù)庫(kù)連接技術(shù)1)ODBCODBC(

開放數(shù)據(jù)庫(kù)互聯(lián)標(biāo)準(zhǔn))由Microsoft提供,定義了數(shù)據(jù)庫(kù)訪問的應(yīng)用程序接口。ODEC的目的是屏蔽各種數(shù)據(jù)庫(kù)存取API接口的差異,應(yīng)用程序可通過ODBC驅(qū)動(dòng)程序的不同數(shù)據(jù)庫(kù)引擎訪問不同的數(shù)據(jù)庫(kù)管理系統(tǒng)。2)JDBCJDBC(Java數(shù)據(jù)庫(kù)連接標(biāo)準(zhǔn))為Java應(yīng)用程序提供統(tǒng)一API。包括:JDBCAPI,為程序員提供不同的數(shù)據(jù)庫(kù)連接方式;JDBCDriver,程序?qū)DBC的訪問先轉(zhuǎn)換成為對(duì)ODBC的調(diào)用,再利用ODBC訪問數(shù)據(jù)庫(kù),JDBC也可直接與數(shù)據(jù)庫(kù)連接。

3)ADO數(shù)據(jù)對(duì)象ADO(ActiveXDataObjects)用以實(shí)現(xiàn)訪問關(guān)系或非關(guān)系數(shù)據(jù)庫(kù)中的數(shù)據(jù)。利用它可以比較容易地實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的查詢、存取操作。ADO是一個(gè)數(shù)據(jù)訪問編程模型,能使大部分?jǐn)?shù)據(jù)源可編程的屬性直接擴(kuò)展到ActiveServer頁(yè)面上;ADO也不是專門為關(guān)系數(shù)據(jù)庫(kù)或ISAM數(shù)據(jù)庫(kù)設(shè)計(jì)的,是一個(gè)任意數(shù)據(jù)源接口。ADO使用本機(jī)數(shù)據(jù)源,通過緊湊簡(jiǎn)明的腳本連接到ODBC兼容的數(shù)據(jù)庫(kù)和OLEDB兼容的數(shù)據(jù)源,可訪問任何與ODBC兼容的數(shù)據(jù)庫(kù),包括MSSQL、Access、Sybase、DM2、Oracle等,不僅支持任何大型數(shù)據(jù)庫(kù)的核心功能,而且支持許多數(shù)據(jù)庫(kù)所專有的特性。

3.4電子商務(wù)領(lǐng)域的熱點(diǎn)技術(shù)1)動(dòng)態(tài)負(fù)荷優(yōu)化技術(shù)一臺(tái)服務(wù)器的處理能力只能達(dá)到每秒幾萬到幾十萬個(gè)請(qǐng)求,無法在一秒鐘內(nèi)處理更多的請(qǐng)求。若能將多臺(tái)服務(wù)器組成一個(gè)系統(tǒng),并通過軟件技術(shù)將所有請(qǐng)求平均分配給所有服務(wù)器,則該系統(tǒng)就擁有了每秒鐘處理幾百萬個(gè)甚至更多請(qǐng)求的能力。這就是負(fù)載均衡最初的設(shè)計(jì)思想。

同時(shí),訪問壓力在不同服務(wù)器上的分布是不均衡的。動(dòng)態(tài)負(fù)荷優(yōu)化技術(shù)通過定義一定的規(guī)則,實(shí)時(shí)、動(dòng)態(tài)地調(diào)整系統(tǒng)承受的總壓力,將負(fù)荷均衡地分配到不同的設(shè)備上,避免因設(shè)備過載而造成的系統(tǒng)服務(wù)瓶頸。負(fù)載均衡由多臺(tái)服務(wù)器以對(duì)稱方式組成服務(wù)器組,服務(wù)器間地位等價(jià),每臺(tái)都可單獨(dú)對(duì)外提供服務(wù)而無須其他服務(wù)器的輔助。通過負(fù)載分擔(dān),將外部請(qǐng)求均勻分配到對(duì)稱結(jié)構(gòu)中的某臺(tái)服務(wù)器上,接收到的服務(wù)器獨(dú)立回應(yīng)客戶的請(qǐng)求。均衡負(fù)載能平均分配客戶請(qǐng)求到服務(wù)器列陣,籍此提供快速獲取重要數(shù)據(jù),解決大量并發(fā)訪問服務(wù)問題。這種群集技術(shù)可用較小投資獲得接近于大型主機(jī)的性能。2)搜索及內(nèi)容管理術(shù)在商務(wù)活動(dòng)中,用戶希望在海量信息中盡快找到相關(guān)數(shù)據(jù)。為此,內(nèi)容管理(ContentManagement)、目錄管理(DirectoryManagement)和搜索技術(shù)有了長(zhǎng)足進(jìn)展。前兩項(xiàng)主要側(cè)重于強(qiáng)化對(duì)信息內(nèi)容的組織,使之合理、可管理;后者則側(cè)重于提高檢索的效率。(1)內(nèi)容管理

CM包括參與電子商務(wù)企業(yè)的內(nèi)部?jī)?nèi)容管理,平臺(tái)的Web內(nèi)容管理,商務(wù)交易內(nèi)容管理和Extranet信息共享內(nèi)容管理(如CRM和SCM等)。

功能上,內(nèi)容管理側(cè)重于企業(yè)管理者、公眾用戶、合作伙伴和供應(yīng)商等獲得結(jié)構(gòu)化與非結(jié)構(gòu)化信息的處理過程。把商務(wù)信息發(fā)布到企業(yè)內(nèi)部網(wǎng)、外部網(wǎng)和網(wǎng)絡(luò)商貿(mào)交換ITE(InternetTradingExchanges)等系統(tǒng)。技術(shù)上,內(nèi)容管理作為內(nèi)容引擎,必須和商務(wù)服務(wù)器緊密集成,形成內(nèi)容生成、傳遞并實(shí)現(xiàn)電子商務(wù)端到端的信息系統(tǒng)。架構(gòu)上,內(nèi)容構(gòu)成商務(wù)系統(tǒng)的核心價(jià)值鏈,它將各類參與交易者發(fā)布企業(yè)與商品等信息視為內(nèi)容供應(yīng)方(ContentProviders),平臺(tái)為服務(wù)提供商(ServiceProviders),查詢與購(gòu)買商品的企業(yè)與客戶視為內(nèi)容消費(fèi)者(ContentConsumers)。因此,完善的電子商務(wù)內(nèi)容管理解決方案必須提供從內(nèi)容創(chuàng)建、發(fā)布、傳播到個(gè)性化提供與交互等全套功能。可見,內(nèi)容管理不是某種單項(xiàng)技術(shù),而是多種先進(jìn)技術(shù)的綜合應(yīng)用,它突破了傳統(tǒng)信息流管理軟件、辦公自動(dòng)化軟件以及文檔管理軟件的應(yīng)用范圍、使用效果和商業(yè)價(jià)值。內(nèi)容管理的目標(biāo)是實(shí)現(xiàn)商務(wù)系統(tǒng)中內(nèi)容價(jià)值鏈的最優(yōu)化。

(2)目錄管理商務(wù)系統(tǒng)中有許多目錄服務(wù)于各種應(yīng)用與管理程序,包括LDAP(輕量級(jí)目錄訪問協(xié)議)目錄和基于X.500的目錄。目錄服務(wù)是一種C/S架構(gòu)的信息查詢服務(wù),它依賴于目錄數(shù)據(jù)庫(kù)。目錄數(shù)據(jù)庫(kù)比關(guān)系數(shù)據(jù)庫(kù)更擅長(zhǎng)于查詢,庫(kù)中的數(shù)據(jù)讀取和查詢效率極高,比關(guān)系型數(shù)據(jù)庫(kù)快得多。但其數(shù)據(jù)寫入效率低,因此適于數(shù)據(jù)不需經(jīng)常改動(dòng),但要頻繁讀出的情況。這在商務(wù)系統(tǒng)中最典型者如供應(yīng)商信息、商品信息、服務(wù)項(xiàng)目信息,等等。目錄數(shù)據(jù)庫(kù)以樹狀層次結(jié)構(gòu)來描述數(shù)據(jù),并用于目錄類資源的管理、網(wǎng)絡(luò)信息的組織和查詢。這種模型與眾多商業(yè)應(yīng)用的業(yè)務(wù)組織結(jié)構(gòu)完全一致。由于在商務(wù)領(lǐng)域中存在大量的層次結(jié)構(gòu),采用目錄數(shù)據(jù)庫(kù)技術(shù)的信息管理系統(tǒng)就能夠輕易地做到與實(shí)際的業(yè)務(wù)模式相匹配。電子商務(wù)系統(tǒng)中面向用戶提供的目錄服務(wù)主要用于在全球范圍內(nèi)查找商戶、和業(yè)務(wù)伙伴和產(chǎn)品與服務(wù)項(xiàng)目等的搜索工具,供查找網(wǎng)上用戶。同檢索工具一樣,目錄服務(wù)用不同方式收集數(shù)據(jù),為目錄服務(wù)器建立用戶與商品數(shù)據(jù)庫(kù)提供了信息源。這些數(shù)據(jù)存儲(chǔ)在LDAP服務(wù)器上,供用戶通過LDAP協(xié)議來訪問其提供的目錄服務(wù)。目錄服務(wù)器是商務(wù)系統(tǒng)中的一種基礎(chǔ)架構(gòu),支持網(wǎng)絡(luò)結(jié)構(gòu)化、安全認(rèn)證、資源集中管理和資源共享功能等。

(3)檢索技術(shù)

檢索是指依據(jù)特定的方法,從已經(jīng)組織好的大量數(shù)據(jù)資源中,查找并獲取特定數(shù)據(jù)的過程,且檢索出的特定數(shù)據(jù),往往不是業(yè)務(wù)信息本身,而是關(guān)于它們的線索。

檢索包括信息存儲(chǔ)和檢索兩過程,前者將大量分散、無序的業(yè)務(wù)信息集中起來,根據(jù)信息格式與內(nèi)容特征,經(jīng)過整理、分類、歸納、標(biāo)引、組織、存儲(chǔ)或鏈接處理等,建立各種各樣的檢索系統(tǒng)使其犧特征化、序列化,后者則采用特征標(biāo)識(shí)匹配等相關(guān)的檢索工具或技術(shù)構(gòu)成具有檢索功能的數(shù)據(jù)庫(kù)與查詢系統(tǒng)。

檢索工具的選用要根據(jù)系統(tǒng)檢索之需制定檢索策略、選擇檢索途徑和方法。技術(shù)上,檢索是使用者輸入應(yīng)用系統(tǒng)的檢索提問,按檢索者預(yù)定的檢索策略與系統(tǒng)中的存貯標(biāo)識(shí)進(jìn)行類比、匹配運(yùn)算,以人機(jī)對(duì)話方式查找出所需內(nèi)容。

檢索系統(tǒng)由信息源、信息組織管理、用戶接口和系統(tǒng)支持技術(shù)等部分組成。1.信息源

如商務(wù)系統(tǒng)中的企業(yè)、產(chǎn)品與服務(wù)項(xiàng)目等的各類數(shù)據(jù)源。

2.信息組織管理

主要是指信息標(biāo)引的方法、組織方式和更新周期。3.系統(tǒng)功能

檢索系統(tǒng)功能取決于其提供的檢索途徑、檢索方式和檢索方法等。4.用戶接口

承擔(dān)用戶與系統(tǒng)間的通訊功能,它通常由用戶模型、信息顯示、命令語言和反饋機(jī)制等部分構(gòu)成。5.系統(tǒng)技術(shù)支持

主要是指檢索系統(tǒng)及其軟硬件平臺(tái)。6.優(yōu)化查詢機(jī)制

好的機(jī)制可提升檢索速度并減少查詢數(shù)據(jù)庫(kù)的工作量。優(yōu)化程序主要分兩類:基于規(guī)則的優(yōu)化程序和基于成本的優(yōu)化程序。前者根據(jù)特定規(guī)則進(jìn)行優(yōu)化,后者則注重特定查詢的時(shí)間成本。

可在SQL語句中為優(yōu)化程序添加一些注釋,原則如下。1)將最常用的查詢結(jié)果高速緩存起來。2)先對(duì)限制較多的部分進(jìn)行查詢/更新操作,余下部分處理的數(shù)據(jù)將會(huì)少一些,以加快運(yùn)行速度。3)在與數(shù)據(jù)庫(kù)交互操作之間保持較大的時(shí)間間隔,執(zhí)行少量的較大的查詢,而不是大量的較小的查詢。4)對(duì)表進(jìn)行預(yù)編譯。5)將鎖定限制到用戶真正想鎖定的數(shù)據(jù)位上。如所有查詢都鎖定于同一張表,則這些查詢只能串行執(zhí)行,性能會(huì)下降。要優(yōu)化電子商務(wù)平臺(tái),優(yōu)化方法非常重要,并需要多種優(yōu)化策略系統(tǒng)地組合;才能取得理想的效率和效果。

3)集群技術(shù)

(1)集群概念

將兩個(gè)以上的服務(wù)器集中起來進(jìn)行同一種服務(wù)。

(2)集群的特點(diǎn)所有服務(wù)器擁有共同名稱,集群內(nèi)任一系統(tǒng)上運(yùn)行的服務(wù)可被所有的客戶使用。集群能協(xié)調(diào)管理各分離組件的錯(cuò)誤和失敗,可透明地向集群中加入組件。用戶的公共數(shù)據(jù)被放置到共享磁盤柜中,應(yīng)用程序被安裝到所有的服務(wù)器上;即在集群上運(yùn)行的應(yīng)用需要在所有的服務(wù)器上安裝一遍。當(dāng)集群系統(tǒng)正常運(yùn)轉(zhuǎn)時(shí),應(yīng)用只在一臺(tái)服務(wù)器上運(yùn)行,并且只有這臺(tái)服務(wù)器才能操縱該應(yīng)用在共享磁盤柜中的數(shù)據(jù)區(qū);其它的服務(wù)器監(jiān)控這臺(tái)服務(wù)器,只要這臺(tái)服務(wù)器上的應(yīng)用停止運(yùn)行,其它的服務(wù)器就會(huì)接管其運(yùn)行的應(yīng)用繼續(xù)運(yùn)行。1.提高系統(tǒng)處理性能一些計(jì)算密集型應(yīng)用,如多行業(yè)、多領(lǐng)域、多區(qū)域市場(chǎng)動(dòng)態(tài)分析等,均需要很強(qiáng)的運(yùn)算處理能力,此時(shí),就需使用計(jì)算機(jī)集群技術(shù),集中幾十臺(tái)甚至上百臺(tái)計(jì)算機(jī)的運(yùn)算能力。提高處理性能一直是集群技術(shù)研究的一個(gè)重要目標(biāo)之一。2.降低成本

在達(dá)到同樣性能條件下,采用集群比采用同等運(yùn)算能力的大型計(jì)算機(jī)具有更高的性價(jià)比。3.提高可擴(kuò)展性

傳統(tǒng)情況下若想擴(kuò)展系統(tǒng)性能,要購(gòu)買更高性能的服務(wù)器。集群技術(shù)中,只需將一般服務(wù)器接入集群即可,服務(wù)在連續(xù)性上幾乎沒有變化,且系統(tǒng)仍完成了性能升級(jí)。4.增強(qiáng)可靠性

集群技術(shù)使系統(tǒng)在故障發(fā)生時(shí)仍可以繼續(xù)工作。在提高系統(tǒng)的可靠性的同時(shí),也減小了故障損失。(3)關(guān)鍵技術(shù)典型的集群體系涉及的關(guān)鍵技術(shù)可歸屬于如下4個(gè)層次。1.網(wǎng)絡(luò)層:網(wǎng)絡(luò)互聯(lián)結(jié)構(gòu)、通信協(xié)議、信號(hào)技術(shù)等。2.節(jié)點(diǎn)機(jī)及操作系統(tǒng)層高性能客戶機(jī)、分層或基于微內(nèi)核的操作系統(tǒng)等。3.集群系統(tǒng)管理層:資源管理、資源調(diào)度、負(fù)載平衡、并行IPO、安全等。4.應(yīng)用層:并行程序開發(fā)環(huán)境、串行應(yīng)用、并行應(yīng)用等。關(guān)鍵技術(shù)是以上4者的有機(jī)結(jié)合,各自解決的問題不同。集群系統(tǒng)管理層是集群系統(tǒng)所特有的功能與技術(shù)的體現(xiàn)。在按需計(jì)算時(shí)代,每個(gè)集群都應(yīng)成為業(yè)務(wù)網(wǎng)格中的一個(gè)節(jié)點(diǎn),所以自治性(自我保護(hù)、自我配置、自我優(yōu)化、自我治療)也將成為集群的一個(gè)重要特征。自治性的實(shí)現(xiàn),各種應(yīng)用的開發(fā)與運(yùn)行,大部分直接依賴于集群的系統(tǒng)管理層。此外,系統(tǒng)管理層的完善程度,決定著集群系統(tǒng)的易用性、穩(wěn)定性、可擴(kuò)展性等諸多關(guān)鍵參數(shù)。20世紀(jì)90年代前,中心服務(wù)器一般都用大型機(jī)(Mainframe),其上可完成一切的應(yīng)用和服務(wù),用戶從終端通過網(wǎng)絡(luò)完成應(yīng)用。其好處是:應(yīng)用集中、較好部署、系統(tǒng)監(jiān)控、管理方便等。但大型機(jī)的缺點(diǎn)也很明顯,主要是設(shè)備昂貴,很難實(shí)現(xiàn)高可用解決方案;非高可用系統(tǒng)在出現(xiàn)故障時(shí),全部應(yīng)用都受到影響;操作系統(tǒng)、設(shè)備和部件比較專用,用戶維護(hù)困難,可擴(kuò)展性不強(qiáng)等。隨著PC及其操作系統(tǒng)的普及和IntelCPU的性能和穩(wěn)定性的不斷提高,人們逐漸用PC服務(wù)器構(gòu)成的分布式系統(tǒng)(DistributedSystem)去代替大型機(jī)。分布式系統(tǒng)解決了大型機(jī)上面提到的多個(gè)缺點(diǎn),卻丟棄了大型機(jī)應(yīng)用的優(yōu)點(diǎn),服務(wù)器多且雜,不好監(jiān)控、管理,不好部署。因此綜合大型機(jī)和分布式系統(tǒng)優(yōu)勢(shì)的服務(wù)器必將成為趨勢(shì),集群系統(tǒng)就這樣應(yīng)運(yùn)而生的服務(wù)器。4)數(shù)據(jù)庫(kù)連接緩存通常用戶通過Web服務(wù)器訪問數(shù)據(jù)庫(kù)時(shí),Web上的應(yīng)用程序

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論