亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于B/S結(jié)構(gòu)的注冊(cè)中心設(shè)計(jì)與實(shí)現(xiàn)

        2015-08-07 14:18:47劉世龍
        大眾科技 2015年3期
        關(guān)鍵詞:瀏覽器頁(yè)面服務(wù)器

        劉世龍

        (桂林電子科技大學(xué)信息與通信學(xué)院,廣西 桂林 541004)

        基于B/S結(jié)構(gòu)的注冊(cè)中心設(shè)計(jì)與實(shí)現(xiàn)

        劉世龍

        (桂林電子科技大學(xué)信息與通信學(xué)院,廣西 桂林 541004)

        企業(yè)中傳統(tǒng)集中式架構(gòu)的服務(wù)注冊(cè)系統(tǒng),存在單點(diǎn)故障和維護(hù)麻煩的問(wèn)題。針對(duì)這一問(wèn)題,本文設(shè)計(jì)并實(shí)現(xiàn)了分布式結(jié)構(gòu)的注冊(cè)中心。它建立在UDDI標(biāo)準(zhǔn)規(guī)范之上,便于后續(xù)擴(kuò)展功能;采用B/S結(jié)構(gòu)降低了成本并提高了交互性和可操作性;同時(shí),引入MVC模型,優(yōu)化了系統(tǒng)的可維護(hù)性。文章主要介紹了該注冊(cè)中心的描述模型和關(guān)鍵技術(shù),并對(duì)注冊(cè)中心的功能進(jìn)行了分析。

        B/S結(jié)構(gòu);注冊(cè)中心;MySQL

        1 引言

        隨著電子商務(wù)的不斷發(fā)展,它推動(dòng)分布式應(yīng)用模型——Web服務(wù)[1-2]的快速發(fā)展。Web服務(wù)基于UDDI[3]、SOAP[4]和WSDL[5]等開放性協(xié)議,為互聯(lián)網(wǎng)提供了一個(gè)松耦合的分布式計(jì)算環(huán)境。由于Web服務(wù)具有模塊化、自描述、互操作、松耦合以及與平臺(tái)無(wú)關(guān)等優(yōu)良特性,這使其得到了廣泛應(yīng)用。傳統(tǒng)的服務(wù)注冊(cè)系統(tǒng)采用的是集中式的構(gòu)架,實(shí)現(xiàn)單一服務(wù)的注冊(cè)中心[6-7]。然而,傳統(tǒng)的服務(wù)注冊(cè)系統(tǒng)存在集中式結(jié)構(gòu)系統(tǒng)共有的性能瓶頸、單點(diǎn)失效且不易擴(kuò)展的缺點(diǎn)。面向web服務(wù)模型注冊(cè)中心為分布式計(jì)算提供了一種有效地方法,面向服務(wù)架構(gòu)(Service Oriented Architecture)[8]的企業(yè)服務(wù)總線具有松耦合的特點(diǎn),能很好地實(shí)現(xiàn)軟件資產(chǎn)的復(fù)用,從而能快速,方便地構(gòu)建系統(tǒng)。因此,本文設(shè)計(jì)了基于B/S結(jié)構(gòu)的注冊(cè)中心,利用B/S結(jié)構(gòu),大大地降低成本,降低操作復(fù)雜度。同時(shí),采用UDDI規(guī)范,能快速發(fā)布以及發(fā)現(xiàn)服務(wù),具有通用性,提高了可擴(kuò)展性。而MVC模型的引入,將業(yè)務(wù)邏輯、數(shù)據(jù)和界面顯示相分離,增強(qiáng)系統(tǒng)的可維護(hù)性。

        2 基于B/S結(jié)構(gòu)的計(jì)算機(jī)技術(shù)

        2.1 C/S的體系結(jié)構(gòu)

        采用C/S體系結(jié)構(gòu),能充分發(fā)揮現(xiàn)有計(jì)算機(jī)的運(yùn)算能力,可以隨著用戶的需要增減設(shè)備,具有表達(dá)能力強(qiáng)、分布、移植性好等優(yōu)點(diǎn)。然而,隨著Internet技術(shù)的廣泛應(yīng)用,C/S結(jié)構(gòu)顯現(xiàn)了許多不足:

        (1)每個(gè)客戶活動(dòng)時(shí)都必須要與服務(wù)器端的數(shù)據(jù)庫(kù)保持連接,運(yùn)算資源難以得到合理的利用。

        (2)在多數(shù)據(jù)庫(kù)、多用戶的情況下,可能會(huì)造成用戶等待時(shí)間過(guò)長(zhǎng),帶有系統(tǒng)崩潰的潛在可能性。

        (3)維護(hù)和升級(jí)成本非常高,每次升級(jí)時(shí),所有客戶端的程序都需要更新。

        2.2 B/S的體系結(jié)構(gòu)

        Browser/Server 模式為Client/Server 模式的擴(kuò)展,采用三層結(jié)構(gòu)模式,分別為表示層、功能層、數(shù)據(jù)層。這種模式最大的優(yōu)點(diǎn)是操作簡(jiǎn)單,客戶端只需安裝和運(yùn)行瀏覽器軟件,無(wú)需安裝其他專門的軟件。B/S 結(jié)構(gòu)提供了一個(gè)跨平臺(tái)的應(yīng)用環(huán)境,實(shí)現(xiàn)了開發(fā)環(huán)境和應(yīng)用環(huán)境的分離。

        B/S結(jié)構(gòu)與傳統(tǒng)的C/S結(jié)構(gòu)相比,具有以下優(yōu)點(diǎn):

        (1)由于Web支持底層的TCP/IP協(xié)議,使Web網(wǎng)與目前使用的局域網(wǎng)做到無(wú)縫連接,從而解決了并構(gòu)系統(tǒng)間的連接問(wèn)題。

        (2)成本降低,B/S支持任何操作系統(tǒng)和瀏覽器,對(duì)配置要求降低。

        (3)系統(tǒng)的相對(duì)集中性使系統(tǒng)的維護(hù)和擴(kuò)展更容易;界面統(tǒng)一,操作相對(duì)簡(jiǎn)單

        3 Java Web技術(shù)

        3.1 MVC原理

        MVC是一種程序開發(fā)設(shè)計(jì)模式,它實(shí)現(xiàn)了顯示模塊與功能模塊的分離。提高了程序的可維護(hù)性、可移植性、可擴(kuò)展性與可重用性,降低了程序的開發(fā)難度。它主要有模型、視圖、控制器三層,其優(yōu)點(diǎn)如下:

        (1)可以為一個(gè)模型在運(yùn)行時(shí)同時(shí)建立和使用多個(gè)視圖。

        (2)視圖與控制器的可接插性,允許更換視圖和控制器對(duì)象,而且可以根據(jù)需求動(dòng)態(tài)的打開或關(guān)閉、甚至在運(yùn)行期間進(jìn)行對(duì)象替換。

        (3)模型的可移植性。因?yàn)槟P褪仟?dú)立于視圖的,所以可以把一個(gè)模型獨(dú)立地移植到新的平臺(tái)工作。

        (4)潛在的框架結(jié)構(gòu)??梢曰诖四P徒?yīng)用程序框架,不僅僅是用在設(shè)計(jì)界面的設(shè)計(jì)中。

        3.2 Servlet與JSP技術(shù)

        Servlet與JSP技術(shù)屬于Web層技術(shù)。Servlet與JSP是不同的導(dǎo)向,前者是程序設(shè)計(jì)人員導(dǎo)向,而JSP是頁(yè)面設(shè)計(jì)人員導(dǎo)向的,Java程序員可將服務(wù)器代碼添加到已經(jīng)設(shè)計(jì)好的靜態(tài)頁(yè)面上,經(jīng)過(guò)一個(gè)JSP容器對(duì)JSP文件進(jìn)行解析后轉(zhuǎn)換為Servlet類交給Web服務(wù)器運(yùn)行,這樣結(jié)合兩者的長(zhǎng)處能提高工作的效率。

        Servlet程序在服務(wù)器端運(yùn)行,動(dòng)態(tài)地生成Web頁(yè)面。與傳統(tǒng)的CGI和許多其他類似CGI的技術(shù)相比,Java Servlet具有更高的效率,更容易使用,功能更強(qiáng)大,具有更好的可移植性,更節(jié)省投資。

        JSP(JavaServer Pages)技術(shù)是由Servlet技術(shù)發(fā)展而來(lái)的,基于Java語(yǔ)言,在跨平臺(tái)、執(zhí)行速度、擴(kuò)展性等方面具有很大的優(yōu)勢(shì)。JSP 頁(yè)面實(shí)際上只是在第一次被調(diào)用的時(shí)候被編譯一次。頁(yè)面被編譯成Java Servlet類,并駐留在服務(wù)器內(nèi)存中,這樣以后調(diào)用該頁(yè)面時(shí)將很快。

        4 UDDI技術(shù)

        4.1 統(tǒng)一描述、發(fā)現(xiàn)和集成協(xié)議

        UDDI(Universal Description,Discovery and Integration)的出現(xiàn)從根本上說(shuō)為了解決在開發(fā)基于組件化的Web服務(wù)中所使用的技術(shù)中無(wú)法解決的一些問(wèn)題。UDDI、SOAP、WSDL等都是基于XML的協(xié)議,他們都是開放的,這樣就使得在集成原有的已被廣泛接受的技術(shù)上,Web服務(wù)可以被廣泛地接受。

        4.2 UDDI商業(yè)注冊(cè)

        UDDI的核心是UDDI商業(yè)注冊(cè)。它使用XML文檔來(lái)描述企業(yè)以及它所提供的Web服務(wù)。UDDI提供了一種基于分布式的商業(yè)注冊(cè)中心的規(guī)范。該規(guī)范規(guī)定了UDDI商業(yè)注冊(cè)中心支持三種數(shù)據(jù):按名稱將企業(yè)組織起來(lái)的白頁(yè)、按類別將企業(yè)組織起來(lái)的黃頁(yè)、按服務(wù)將企業(yè)組織起來(lái)的綠頁(yè)。

        白頁(yè)包含有關(guān)企業(yè)自身的信息,如企業(yè)名稱,詳細(xì)的聯(lián)系人信息和企業(yè)地址等;黃頁(yè)包含有關(guān)企業(yè)所提供服務(wù)的分類信息;綠頁(yè)包含有關(guān)企業(yè)所提供的服務(wù)的技術(shù)信息,包括使用該服務(wù)所需的所有技術(shù)信息。

        4.3 UDDI信息模型

        UDDI XML Schema定義了四種主要的信息類型:商業(yè)實(shí)體信息(businessEntity)、商業(yè)服務(wù)信息(businessService)、綁定信息(bindingTemplate)和服務(wù)調(diào)用規(guī)范(tModel),如圖1所示:

        (1)商業(yè)實(shí)體信息:businessEntity元素

        “businessEntity”結(jié)構(gòu)中包含有關(guān)企業(yè)及其提供的服務(wù)的所有描述性信息,如企業(yè)名稱和對(duì)企業(yè)的描述以及聯(lián)系人信息、分類以及與其它企業(yè)之間的關(guān)系。“businessEntity”結(jié)構(gòu)支持“白頁(yè)”和“黃頁(yè)”。

        圖1 UDDI數(shù)據(jù)結(jié)構(gòu)

        (2)商業(yè)服務(wù)信息:businessService元素

        businessService結(jié)構(gòu)是一個(gè)描述性容器,描述了由企業(yè)提供的經(jīng)過(guò)分類的一組服務(wù)。這個(gè)結(jié)構(gòu)的信息支持“綠頁(yè)”,是businessEntity的子結(jié)構(gòu),每個(gè)businessEntity結(jié)構(gòu)可以包含一個(gè)或多個(gè)businessService結(jié)構(gòu)。

        (3)綁定信息:bindingTemplate元素

        bindingTemplate結(jié)構(gòu)包含一個(gè)服務(wù)的技術(shù)性描述信息。每個(gè)bindingTemplate對(duì)應(yīng)單個(gè) businessService 元素。該結(jié)構(gòu)的信息支持“綠頁(yè)”。

        (4)服務(wù)調(diào)用規(guī)范:tModel元素

        “tModel”結(jié)構(gòu)的內(nèi)容由鍵、名稱、描述和URL元素組成。它提供有關(guān)如何與該服務(wù)交互的具體信息。

        UDDI 提供了一種編程模型和模式,它定義了與注冊(cè)中心通信的規(guī)則。UDDI消息的傳輸,通過(guò)HTTP從客戶機(jī)的SOAP請(qǐng)求傳到注冊(cè)中心節(jié)點(diǎn),然后再反向傳輸。注冊(cè)中心服務(wù)器的SOAP服務(wù)器接收UDDI SOAP 消息、進(jìn)行處理,然后把SOAP響應(yīng)返回給客戶機(jī),如圖2所示:

        圖2 UDDI消息的傳遞過(guò)程

        5 系統(tǒng)功能的實(shí)現(xiàn)

        5.1 應(yīng)用程序與MySQL數(shù)據(jù)庫(kù)的連接技術(shù)

        MySQL是一個(gè)精巧的、多用戶、多線程SQL數(shù)據(jù)庫(kù)管理系統(tǒng),具有強(qiáng)大功能、靈活性、豐富的應(yīng)用編程接口(API)及精巧的系統(tǒng)結(jié)構(gòu)。Java程序連接MySQL數(shù)據(jù)庫(kù)需要JDBC驅(qū)動(dòng),本文所用的驅(qū)動(dòng)程序是純Java類庫(kù),它將把JDBC的請(qǐng)求翻譯成特定的數(shù)據(jù)庫(kù)協(xié)議,如圖3所示:

        圖3 JDBC驅(qū)動(dòng)程序示意圖

        5.2 系統(tǒng)的功能設(shè)計(jì)與實(shí)現(xiàn)

        在本系統(tǒng)的設(shè)計(jì)中,注冊(cè)中心共有三個(gè)模塊的功能,分別為注冊(cè)、查詢和刪除。瀏覽器通過(guò)發(fā)送HTTP請(qǐng)求到Tomcat服務(wù)器,此時(shí),運(yùn)行在Web服務(wù)器端的Java應(yīng)用程序Servlet對(duì)HTTP請(qǐng)求進(jìn)行處理,Servlet可將業(yè)務(wù)邏輯處理好之后的數(shù)據(jù)傳送到顯示層JSP,從而在瀏覽器中顯示結(jié)果。系統(tǒng)流程如圖5-2所示:

        (1)Servlet邏輯部分

        Servlet負(fù)責(zé)處理業(yè)務(wù)邏輯 ,運(yùn)行在Servlet容器下,由Servlet容器負(fù)責(zé)處理。本文中使用基于HTTP協(xié)議的Servlet,作為基于HTTP協(xié)議的Servlet可以通過(guò)繼承javax.servlet.HttpServlet來(lái)實(shí)現(xiàn)。HttpServlet類已經(jīng)實(shí)現(xiàn)了Servlet接口并根據(jù)不同的請(qǐng)求(get/post)調(diào)用響應(yīng)的方法(doGet/doPost)。所以,對(duì)doGet方法進(jìn)行重寫來(lái)處理Get請(qǐng)求,對(duì)doPost方法進(jìn)行重寫來(lái)用于處理Post請(qǐng)求。每個(gè)HttpServlet都需要一個(gè)特定的部署描述符文件來(lái)指明特征,并置于應(yīng)用的/WEB-INF文件夾中,文件名一般為web.xml。

        圖4 系統(tǒng)流程圖

        (2)服務(wù)器Tomcat部分

        Tomcat目錄下conf文件夾中存放著配置文件Server.xml,其中定義了Tomcat的端口號(hào),默認(rèn)值為8080,可設(shè)置為其他端口。配置文件web.xml定義缺省值訪問(wèn)文件,當(dāng)瀏覽器中輸入域名后,當(dāng)缺省文件名時(shí),服務(wù)器按<welcome-file>標(biāo)簽的順序搜索規(guī)定的文件,服務(wù)器自動(dòng)訪問(wèn)該文件并在瀏覽器顯示。

        (3)JSP顯示層部分

        Servlet與JSP之間的數(shù)據(jù)交換,需設(shè)計(jì)一個(gè)類包含所有需要顯示在瀏覽器上的數(shù)據(jù),然后通過(guò)javax.servlet.http.HttpServletRequest類下的setAttribute和getAttribute方法來(lái)傳遞,如查詢功能,需要將企業(yè)的各項(xiàng)信息顯示在瀏覽器上,因而在設(shè)計(jì)類的時(shí)候包含了企業(yè)的各項(xiàng)信息在內(nèi)再傳遞到JSP頁(yè)面并顯示。

        綜上所述,基于B/S結(jié)構(gòu)的UDDI注冊(cè)中心具有B/S結(jié)構(gòu)的跨平臺(tái)、低成本的特性、Java Web技術(shù)的跨平臺(tái)和擴(kuò)展性強(qiáng)的特性、UDDI的分布性的特性。該注冊(cè)中心能夠?qū)⑺械姆蟄DDI規(guī)范的標(biāo)準(zhǔn)服務(wù)集成在開放的、標(biāo)準(zhǔn)的服務(wù)描述、發(fā)現(xiàn)和集成的平臺(tái)上,具有較好的擴(kuò)展性和實(shí)用性。

        6 功能測(cè)試

        本系統(tǒng)實(shí)現(xiàn)了注冊(cè)、查詢、刪除等功能,我們以注冊(cè)為例進(jìn)行分析。開啟Tomcat服務(wù)器,打開瀏覽器并在地址欄輸入地址:http://localhost:8080/UDDIMgr/servlet/ Servlet_Test,即可進(jìn)入首頁(yè),如圖5所示:

        圖5 首頁(yè)

        在首頁(yè)中點(diǎn)擊注冊(cè)進(jìn)入注冊(cè)頁(yè)面。在注冊(cè)頁(yè)面輸入相關(guān)信息后,點(diǎn)擊注冊(cè)按鈕,完成注冊(cè)。在注冊(cè)頁(yè)面,帶紅色星號(hào)為必填項(xiàng),缺省則不能成功注冊(cè)。同時(shí),頁(yè)面還帶有跳轉(zhuǎn)到其他功能的按鈕,如圖6所示:

        圖6 Service Regist

        7 結(jié)束語(yǔ)

        基于B/S結(jié)構(gòu)的注冊(cè)中心,建立在UDDI規(guī)范上,將所有符合該規(guī)范的標(biāo)準(zhǔn)服務(wù)集成在一個(gè)標(biāo)準(zhǔn)的服務(wù)描述、發(fā)現(xiàn)和集成平臺(tái)之上,極大地降低了集成和互操作的代價(jià)。引入B/S結(jié)構(gòu)這種網(wǎng)絡(luò)結(jié)構(gòu)模式可以統(tǒng)一客戶端,將系統(tǒng)功能實(shí)現(xiàn)的核心部分集中到服務(wù)器中,降低了系統(tǒng)的維護(hù)和升級(jí)成本,并且很好地解決了跨平臺(tái)的問(wèn)題,增強(qiáng)了交互性和實(shí)用性。

        [1] 柴曉路,梁宇奇.Web Services技術(shù)、架構(gòu)和應(yīng)用[M].北京:電子工業(yè)出版社,2003.

        [2] 張瑋.基于J2EE的Web Service的研究與構(gòu)建[D].武漢:武漢理工大學(xué),2005.

        [3] W3C Group.Web Services Description Language (WSDL) 1.1 W3C Note [EB/OL].http://www.w3.org/TR/wsdl.html, 2001.

        [4] W3C Group. Simple Object Access Protocol (SOAP) 1.1 W3C Note [EB/OL].http://www.w3.org/TR/2000/NOTESOAP-20000508/,2000.

        [5] Clement L,Hately A,Riegen CV,Rogers T. Universal descryption discovery & integration(UDDI)3.0.2 [EB/OL]. http:// www. uddi.org/pubs/uddi_v3.htm,2004.

        [6] LIU J X, LIU J, CHAO L, Design and implementation of an extended UDDI registration center for Web service graph [C] //ICWS2007:Proceedings of the 2007 IEEE International Conference on Web Services. Piscataway: IEEE 2007:1174 -1175.

        [7] WANG M.Research and implementation of a highly avaliable Web services platform [D]. Xi'an: Xidian University, 2012.

        [8] Heather Kreger,Vince Brunssen,Heather Kreger.面向服務(wù)的體系結(jié)構(gòu)(SOA)標(biāo)準(zhǔn)面向服務(wù)的體系結(jié)構(gòu)(SOA)標(biāo)準(zhǔn)[EB/OL].http://www.ibm.com/developerworks/cn/webservices/ ws-soa-standards/.

        The design and implementation of the registry based on B/S structure

        Traditional centralized architecture was used in the service registry system in the enterprise, so there is the single point of failure and maintenance problem. In order to solve this problem, this paper designed and implemented a distributed architecture of the registry. It is based on UDDI specification to facilitate subsequent extensions; and it uses B/S structure to reduce the cost and improve the interactivity and operability; and at the same time, the MVC model, which is introduced in the registry, optimizes the maintainability of the system. This paper mainly introduces description model and the key technology of the registry, and analyses the function of the registry.

        B/S structure; registry; MySQL

        TP393

        A

        1008-1151(2015)03-0030-04

        2015-02-15

        桂林市科技開發(fā)(No.20140103-5)。

        劉世龍(1988-),男,桂林電子科技大學(xué)信息與通信學(xué)院碩士研究生,研究方向?yàn)橹悄苄畔⑻幚怼?/p>

        猜你喜歡
        瀏覽器頁(yè)面服務(wù)器
        大狗熊在睡覺
        刷新生活的頁(yè)面
        通信控制服務(wù)器(CCS)維護(hù)終端的設(shè)計(jì)與實(shí)現(xiàn)
        反瀏覽器指紋追蹤
        電子制作(2019年10期)2019-06-17 11:45:14
        得形忘意的服務(wù)器標(biāo)準(zhǔn)
        計(jì)算機(jī)網(wǎng)絡(luò)安全服務(wù)器入侵與防御
        環(huán)球?yàn)g覽器
        再見,那些年我們嘲笑過(guò)的IE瀏覽器
        同一Word文檔 縱橫頁(yè)面并存
        淺析ASP.NET頁(yè)面導(dǎo)航技術(shù)
        性一交一乱一伦| 色婷婷色丁香久久婷婷| 欧美不卡一区二区三区| 丰满熟妇乱又伦| 国产人成亚洲第一网站在线播放| 中文字幕a区一区三区| 最新日本人妻中文字幕| 熟妇人妻久久中文字幕| 国产成人精品电影在线观看18| 亚洲AV无码日韩一区二区乱| 精品精品国产三级av在线| 亚洲av综合av一区| 三年片在线观看免费大全电影| www.av在线.com| 成人大片免费在线观看视频| 麻豆免费观看高清完整视频| 特级毛片a级毛片在线播放www| 美女视频永久黄网站免费观看国产| 小池里奈第一部av在线观看| 少妇熟女天堂网av| 麻豆精品久久久久久久99蜜桃 | 国产精品亚洲ΑV天堂无码| 丝袜美腿诱惑区在线播放| 日日躁夜夜躁狠狠躁| 成人免费视频在线观看| 亚洲日产AV中文字幕无码偷拍| 精品人妻一区二区三区视频| 激情综合丁香五月| 国产亚洲欧美在线观看的| 国产猛男猛女超爽免费av| 极品人妻被黑人中出种子| 亚洲永久无码7777kkk| 国产视频不卡在线| 最新中文字幕日韩精品| 真人做爰片免费观看播放| 国产成人av综合亚洲色欲| 蜜臀av午夜一区二区三区| 亚洲AV成人无码久久精品老人| 男女干逼视频免费网站| 国产极品少妇一区二区| 丰满老熟妇好大bbbbb|