版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、本 科 畢 業(yè) 論 文 Web Service的設(shè)計(jì)與實(shí)現(xiàn)Development of an Embedded Streaming Media Player BThe Design and Implementation of Web Service姓 名:學(xué) 號:學(xué)院:軟件學(xué)院系:軟件工程專 業(yè):軟件工程年 級:指導(dǎo)教師: 年 月摘要近年來,網(wǎng)絡(luò)電臺和網(wǎng)絡(luò)音樂以其時(shí)尚靈活的特性吸引了越來越多的人群,收聽網(wǎng)絡(luò)流媒體節(jié)目已經(jīng)漸漸成為一種潮流趨勢。嵌入式設(shè)備具有便攜和個(gè)性化的特點(diǎn),作為本世紀(jì)最具生命力的技術(shù)之一,它為信息產(chǎn)業(yè)帶來了巨大商機(jī)。作為畢業(yè)設(shè)計(jì)課題,本工程設(shè)計(jì)開發(fā)了一款嵌入式網(wǎng)絡(luò)流媒體播放器
2、,它很好地融合了嵌入式技術(shù)與流媒體技術(shù)。播放器通過無線或有線網(wǎng)絡(luò)與Web Service效勞器和流媒體效勞器進(jìn)行交互,集成了節(jié)目列表瀏覽、節(jié)目搜索、流媒體播放和好友交互等功能。本文首先引入嵌入式和SOA等相關(guān)背景,描述了該系統(tǒng)的總體設(shè)計(jì)情況,重點(diǎn)論述Web Service設(shè)計(jì)與實(shí)現(xiàn)的細(xì)節(jié),并展示了測試情況。最后,本文對本課題開發(fā)的嵌入式流媒體播放器工程進(jìn)行總結(jié),展望該領(lǐng)域的技術(shù)開展以及對人們娛樂生活的巨大推動作用。關(guān)鍵詞:Web Service;流媒體;嵌入式系統(tǒng)AbstractIn recent years, network radio station and network music h
3、ave attracted more and more crowds with its fashion and flexibility characteristic. Listening to the network streaming media program has already become a kind of trend gradually. The embedded equipment has portable and the customized characteristic. As one of vitality technologies in this century, i
4、t has brought the enormous opportunity for the information industry. As a graduation design subject, we design and develop embedded streaming media player, which has well merged embedded technology and streaming media technology. The player interacts with Web Service servers and streaming media serv
5、ers through wireless or wired networks. We integrated programs listing, programs searching, streaming media playback and communication with friends to this player.This paper first introduces embedded technology and SOA, etc. In these relevant backgrounds, the paper described the overall design situa
6、tion of this system, and described the design of Web Service and implementation detail. I will also show the test results of this system. Finally, this paper summarized this project of embedded streaming media player, and looked forward to the technical development of this domain and enormous impetu
7、s to peoples amusement life. Key words: Web Service; Streaming Media; Embedded System目錄 TOC o 1-3 h z u HYPERLINK l _Toc231118149 第一章 緒論 PAGEREF _Toc231118149 h 1 HYPERLINK l _Toc231118150 第二章 系統(tǒng)開發(fā)平臺及相關(guān)技術(shù)概述 PAGEREF _Toc231118150 h 3 HYPERLINK l _Toc231118151 2.1 Visual Studio 簡介 PAGEREF _Toc23111815
8、1 h 3 HYPERLINK l _Toc231118152 2.2 Windows CE平臺開發(fā) PAGEREF _Toc231118152 h 4 HYPERLINK l _Toc231118153 2.2.1 Windows CE嵌入式操作系統(tǒng) PAGEREF _Toc231118153 h 4 HYPERLINK l _Toc231118154 2.2.2 WTL技術(shù)簡介 PAGEREF _Toc231118154 h 6 HYPERLINK l _Toc231118155 2.3 .NET Framework PAGEREF _Toc231118155 h 7 HYPERLINK
9、l _Toc231118156 2.4 SOA和Web Service PAGEREF _Toc231118156 h 8 HYPERLINK l _Toc231118157 2.4.1 SOA簡介 PAGEREF _Toc231118157 h 8 HYPERLINK l _Toc231118158 2.4.2 Web Service的概念 PAGEREF _Toc231118158 h 10 HYPERLINK l _Toc231118159 2.4.3 Web Service與SOA PAGEREF _Toc231118159 h 11 HYPERLINK l _Toc231118160
10、 2.4.4 Web Service與.NET Framework PAGEREF _Toc231118160 h 12 HYPERLINK l _Toc231118161 2.5 SOAP技術(shù)簡介 PAGEREF _Toc231118161 h 13 HYPERLINK l _Toc231118162 2.6 網(wǎng)絡(luò)流媒體的特點(diǎn) PAGEREF _Toc231118162 h 14 HYPERLINK l _Toc231118163 第三章系統(tǒng)總體設(shè)計(jì) PAGEREF _Toc231118163 h 16 HYPERLINK l _Toc231118164 3.1 系統(tǒng)概述及功能 PAGERE
11、F _Toc231118164 h 16 HYPERLINK l _Toc231118165 3.1.1 開發(fā)背景 PAGEREF _Toc231118165 h 16 HYPERLINK l _Toc231118166 3.1.2 總體目標(biāo) PAGEREF _Toc231118166 h 16 HYPERLINK l _Toc231118167 3.1.3 系統(tǒng)需求 PAGEREF _Toc231118167 h 17 HYPERLINK l _Toc231118168 3.1.5 系統(tǒng)參數(shù) PAGEREF _Toc231118168 h 18 HYPERLINK l _Toc2311181
12、69 3.2 系統(tǒng)整體架構(gòu) PAGEREF _Toc231118169 h 21 HYPERLINK l _Toc231118170 3.3 系統(tǒng)模塊設(shè)計(jì) PAGEREF _Toc231118170 h 22 HYPERLINK l _Toc231118171 3.3.1 界面模塊設(shè)計(jì) PAGEREF _Toc231118171 h 22 HYPERLINK l _Toc231118172 控制器模塊設(shè)計(jì) PAGEREF _Toc231118172 h 22 HYPERLINK l _Toc231118173 模型模塊設(shè)計(jì) PAGEREF _Toc231118173 h 23 HYPERLIN
13、K l _Toc231118174 播放模塊設(shè)計(jì) PAGEREF _Toc231118174 h 23 HYPERLINK l _Toc231118175 網(wǎng)絡(luò)通信設(shè)計(jì) PAGEREF _Toc231118175 h 23 HYPERLINK l _Toc231118176 數(shù)據(jù)存儲模塊設(shè)計(jì) PAGEREF _Toc231118176 h 23 HYPERLINK l _Toc231118177 第四章 Web Service的設(shè)計(jì)與實(shí)現(xiàn) PAGEREF _Toc231118177 h 24 HYPERLINK l _Toc231118178 4.1 Web Service模塊的設(shè)計(jì)概述 PA
14、GEREF _Toc231118178 h 24 HYPERLINK l _Toc231118179 4.2 Web Service實(shí)現(xiàn)的整體架構(gòu) PAGEREF _Toc231118179 h 25 HYPERLINK l _Toc231118180 4.3 Web Service的內(nèi)部實(shí)現(xiàn)流程 PAGEREF _Toc231118180 h 27 HYPERLINK l _Toc231118181 4.4 Web Service與客戶端的通信 PAGEREF _Toc231118181 h 29 HYPERLINK l _Toc231118182 4.5 Web Service對XML的使
15、用 PAGEREF _Toc231118182 h 32 HYPERLINK l _Toc231118183 第五章測試及運(yùn)行結(jié)果 PAGEREF _Toc231118183 h 35 HYPERLINK l _Toc231118184 5.1 單元測試 PAGEREF _Toc231118184 h 35 HYPERLINK l _Toc231118185 5.2 集成測試 PAGEREF _Toc231118185 h 36 HYPERLINK l _Toc231118186 5.3 系統(tǒng)測試 PAGEREF _Toc231118186 h 37 HYPERLINK l _Toc23111
16、8187 第六章總結(jié) PAGEREF _Toc231118187 h 40 HYPERLINK l _Toc231118188 參考文獻(xiàn) PAGEREF _Toc231118188 h 42 HYPERLINK l _Toc231118189 致謝 PAGEREF _Toc231118189 h 43Content TOC o 1-3 h z u HYPERLINK l _Toc231111124 Chapter 1 Introduction PAGEREF _Toc231111124 h 1 HYPERLINK l _Toc231111125 Chapter 2 The system dev
17、eloping platform and relevant technological outline PAGEREF _Toc231111125 h 3 HYPERLINK l _Toc231111126 2.1 Introduction to Visual Studio PAGEREF _Toc231111126 h 3 HYPERLINK l _Toc231111127 2.2 Development on Windows CE platform PAGEREF _Toc231111127 h 4 HYPERLINK l _Toc231111128 2.2.1 Windows CE em
18、bedded operating system PAGEREF _Toc231111128 h 4 HYPERLINK l _Toc231111129 2.2.2 Introduction to WTL PAGEREF _Toc231111129 h 6 HYPERLINK l _Toc231111130 2.3 .NET Framework PAGEREF _Toc231111130 h 7 HYPERLINK l _Toc231111131 2.4 SOA和Web Service PAGEREF _Toc231111131 h 8 HYPERLINK l _Toc231111132 2.4
19、.1 Introduction to SOA PAGEREF _Toc231111132 h 8 HYPERLINK l _Toc231111133 2.4.2 The concept of Web Service PAGEREF _Toc231111133 h 10 HYPERLINK l _Toc231111134 2.4.3 Web Service and SOA PAGEREF _Toc231111134 h 11 HYPERLINK l _Toc231111135 2.4.4 Web Service and .NET Framework PAGEREF _Toc231111135 h
20、 12 HYPERLINK l _Toc231111136 2.5 Introduction to SOAP PAGEREF _Toc231111136 h 13 HYPERLINK l _Toc231111137 2.6 Network streaming media features PAGEREF _Toc231111137 h 14 HYPERLINK l _Toc231111138 Chapter 3System overall design PAGEREF _Toc231111138 h 16 HYPERLINK l _Toc231111139 3.1 System summari
21、ze and function PAGEREF _Toc231111139 h 16 HYPERLINK l _Toc231111140 3.1.1 Development background PAGEREF _Toc231111140 h 16 HYPERLINK l _Toc231111141 3.1.2 Overall objective PAGEREF _Toc231111141 h 16 HYPERLINK l _Toc231111142 3.1.3 System requirements PAGEREF _Toc231111142 h 17 HYPERLINK l _Toc231
22、111143 3.1.5 System configuration PAGEREF _Toc231111143 h 18 HYPERLINK l _Toc231111144 3.2 System overall architecture PAGEREF _Toc231111144 h 21 HYPERLINK l _Toc231111145 3.3 System module design PAGEREF _Toc231111145 h 22 HYPERLINK l _Toc231111146 3.3.1 View module design PAGEREF _Toc231111146 h 2
23、2 HYPERLINK l _Toc231111147 Controller module design PAGEREF _Toc231111147 h 22 HYPERLINK l _Toc231111148 Model module design PAGEREF _Toc231111148 h 23 HYPERLINK l _Toc231111149 Playing module design PAGEREF _Toc231111149 h 23 HYPERLINK l _Toc231111150 Network communication module design PAGEREF _T
24、oc231111150 h 23 HYPERLINK l _Toc231111151 Data storage and loading module design PAGEREF _Toc231111151 h 23 HYPERLINK l _Toc231111152 Chapter 4 The design and implementation of Web Service PAGEREF _Toc231111152 h 24 HYPERLINK l _Toc231111153 4.1 Summary of Web Service design PAGEREF _Toc231111153 h
25、 24 HYPERLINK l _Toc231111154 4.2 The overall architecture of Web Service implementation PAGEREF _Toc231111154 h 25 HYPERLINK l _Toc231111155 4.3 Implementation procedure of Web Service inside PAGEREF _Toc231111155 h 27 HYPERLINK l _Toc231111156 4.4 Communication between Web Service and client PAGER
26、EF _Toc231111156 h 29 HYPERLINK l _Toc231111157 4.5 Use of XML in Web Service PAGEREF _Toc231111157 h 32 HYPERLINK l _Toc231111158 Chapter 5Testing and running results PAGEREF _Toc231111158 h 35 HYPERLINK l _Toc231111159 5.1 Unit Testing PAGEREF _Toc231111159 h 35 HYPERLINK l _Toc231111160 5.2 Integ
27、ration Testing PAGEREF _Toc231111160 h 36 HYPERLINK l _Toc231111161 5.3 System Testing PAGEREF _Toc231111161 h 37 HYPERLINK l _Toc231111162 Chapter 6Summarize PAGEREF _Toc231111162 h 40 HYPERLINK l _Toc231111163 References PAGEREF _Toc231111163 h 42 HYPERLINK l _Toc231111164 Acknowledgement PAGEREF
28、_Toc231111164 h 43第一章 緒論互聯(lián)網(wǎng)自從1969年誕生以來,經(jīng)過多年的成長,規(guī)模呈幾何級數(shù)增長,已深入到社會生活的方方面面,成為社會影響力大、開展前景廣闊的新型產(chǎn)業(yè)和新型媒體?;ヂ?lián)網(wǎng)的迅猛開展和普及為流媒體業(yè)務(wù)開展提供了強(qiáng)大的市場動力,流媒體業(yè)務(wù)正變得日益流行。目前流媒體技術(shù)廣泛用于多媒體新聞發(fā)布、在線直播、網(wǎng)絡(luò)廣告、電子商務(wù)、視頻點(diǎn)播、遠(yuǎn)程教育、遠(yuǎn)程醫(yī)療、網(wǎng)絡(luò)電臺、實(shí)時(shí)視頻會議等互聯(lián)網(wǎng)信息效勞的方方面面。流媒體技術(shù)的應(yīng)用將為網(wǎng)絡(luò)信息交流帶來革命性的變化,對人們的工作和生活將產(chǎn)生深遠(yuǎn)的影響。由于多媒體信息的數(shù)據(jù)量較大,又存在網(wǎng)絡(luò)帶寬的限制,采用下載方式要花數(shù)分鐘甚至數(shù)小時(shí),其
29、極大的延遲對于視頻點(diǎn)播、遠(yuǎn)程教學(xué)等對實(shí)時(shí)性要求很高的多媒體應(yīng)用來說,顯然不適合。流式傳輸采用的是邊接收邊播放的原那么,即數(shù)據(jù)流由流媒體效勞器向用戶連續(xù)、實(shí)時(shí)地傳送,客戶機(jī)不必等到整個(gè)文件全部下載完畢,只需經(jīng)過幾秒或十?dāng)?shù)秒的啟動延時(shí)即可進(jìn)行觀看,采用一邊播放,一邊下載,一邊丟棄的方式,節(jié)省了客戶端存儲空間,有效地利用了帶寬,并真正實(shí)現(xiàn)作品的知識產(chǎn)權(quán)保護(hù)。但是,目前流媒體播放的終端大多采用PC平臺的客戶端軟件,單一的終端極大了限制了用戶隨時(shí)隨地體驗(yàn)流媒體的魅力,而嵌入式平臺可以很好地解決這一問題。隨著計(jì)算機(jī)和通訊技術(shù)的飛速開展,互聯(lián)網(wǎng)的迅速普及和3C融合的加速,嵌入式技術(shù)作為本世紀(jì)最有生命力的技術(shù)
30、之一得到了廣泛運(yùn)用,滲透到社會生活的各個(gè)角落,目前已成為通信和消費(fèi)類產(chǎn)品的共同開展方向。與PC相比,嵌入式設(shè)備最大的優(yōu)勢在于其便攜性和易操作性。特別是隨著高速無線網(wǎng)絡(luò)的逐漸普及,改變了有線網(wǎng)絡(luò)的局限性,嵌入式設(shè)備完全可以做到隨時(shí)隨地接入網(wǎng)絡(luò)。綜上所述,一臺具有流媒體解碼能力和無線網(wǎng)絡(luò)接入特性的多媒體終端能夠做到真正的隨時(shí)隨地收聽流媒體節(jié)目,真正使收聽流媒體從復(fù)雜的電腦應(yīng)用轉(zhuǎn)變?yōu)楹唵蔚臒o線終端操作,讓更多的人能通過嵌入式終端設(shè)備收聽到互聯(lián)網(wǎng)上發(fā)布的全球各地的流媒體節(jié)目。上班族可以在上下班途中及時(shí)收聽新聞;在校學(xué)生可在晨練時(shí)收聽英語播送;音樂愛好者可以在逛街時(shí)收聽世界各地不同風(fēng)格的音樂播送;商務(wù)人
31、士可以在旅行途中收聽最新的股市行情;球迷朋友可以在第一時(shí)間了解國內(nèi)外體壇快訊,同時(shí)也可以向朋友分享自己喜愛的節(jié)目針對這一設(shè)想,本工程在嵌入式平臺上設(shè)計(jì)開發(fā)了一款基于無線或有線的網(wǎng)絡(luò)接入方式,能讓用戶收聽到全球各地流媒體節(jié)目的播放器。播放器基于Windows CE平臺,集成了流媒體節(jié)目瀏覽、搜索、播放、點(diǎn)評和推薦的功能。播放器還可播放本地存儲中的音樂,同時(shí)也能利用本身的USB主控端接口直接連接USB接口的MP3隨身聽。設(shè)備通過網(wǎng)絡(luò)與Web Service效勞器和流媒體效勞器進(jìn)行交互,一方面實(shí)現(xiàn)了網(wǎng)絡(luò)流媒體的播放,另一方面實(shí)現(xiàn)了與門戶系統(tǒng)的互動和信息傳遞。此外,現(xiàn)有傳統(tǒng)產(chǎn)品的流媒體索引大多來自于第
32、三方,內(nèi)容上受限制,為了提供更多流媒體索引,工程決定對流媒體智能搜索引擎進(jìn)行研究,并根據(jù)內(nèi)容對流媒體進(jìn)行分類,建立流媒體索引網(wǎng)站,提供基于Web的索引瀏覽及播放設(shè)備上的索引瀏覽,同時(shí)建立用戶之間的交互。系統(tǒng)基于模塊化和結(jié)構(gòu)化的軟件設(shè)計(jì)思想。播放器終端采用MVC的框架開發(fā),并實(shí)現(xiàn)了對多種音頻流格式的解碼和播放,具有良好的可移植性和可維護(hù)性。Web Service端采用結(jié)構(gòu)清晰的設(shè)計(jì)框架,以XML為協(xié)議載體與客戶端進(jìn)行信息交互,同時(shí)能夠兼容多種數(shù)據(jù)庫,具有良好的靈活性。本文將對系統(tǒng)的相關(guān)技術(shù),總體設(shè)計(jì)和客戶端的設(shè)計(jì)進(jìn)行說明,同時(shí)對Web Service的設(shè)計(jì)與實(shí)現(xiàn)進(jìn)行詳細(xì)的描述。第二章 系統(tǒng)開發(fā)平
33、臺及相關(guān)技術(shù)概述 Visual Studio 簡介Visual Studio 是微軟公司推出的開發(fā)環(huán)境。是目前最流行的 Windows 平臺應(yīng)用程序開發(fā)環(huán)境。Visual Studio 可以用來創(chuàng)立 Windows 平臺下的 Windows 應(yīng)用程序和網(wǎng)絡(luò)應(yīng)用程序,也可以用來創(chuàng)立網(wǎng)絡(luò)效勞、智能設(shè)備應(yīng)用程序和 Office 插件。圖2.1是Visual Studio 2005的主開發(fā)界面,在該開發(fā)環(huán)境下,開發(fā)人員能夠使用改良后的可視化設(shè)計(jì)工具、編程語言和代碼編輯器,享受高效率的開發(fā)環(huán)境,實(shí)現(xiàn)高效的團(tuán)隊(duì)協(xié)作和快速的應(yīng)用程序開發(fā)。圖2.1 Visual Studio 2005開發(fā)環(huán)境概覽Visual
34、 Studio 包含了一套完整的開發(fā)工具,用于生成 ASP Web 應(yīng)用程序、XML Web Services、桌面應(yīng)用程序和移動應(yīng)用程序。Visual Basic .NET、Visual C+ .NET、Visual C# .NET和Visual J# .NET 全都使用相同的集成開發(fā)環(huán)境 IDE,該環(huán)境允許它們共享工具并有助于創(chuàng)立混合語言解決方案。另外,這些語言利用了.NET Framework 的功能,此框架提供對簡化 ASP Web 應(yīng)用程序和 XML Web services 開發(fā)的關(guān)鍵技術(shù)的訪問。 Windows CE平臺開發(fā)2.2.1 Windows CE嵌入式操作系統(tǒng)Windo
35、ws CE是微軟公司嵌入式、移動計(jì)算平臺的根底,它是一個(gè)開放的、可升級的32位嵌入式操作系統(tǒng),是基于掌上型電腦類的電子設(shè)備操作系統(tǒng),它是精簡的Windows 95,Windows CE的圖形用戶界面相當(dāng)出色。Windows CE的界面圖。圖2.2Windows CE界面圖Windows CE中,其中CE中的C代表袖珍Compact、消費(fèi)Consumer、通信能力Connectivity)和伴侶Companion;E代表電子產(chǎn)品Electronics。與Windows 95/98、Windows NT不同的是,Windows CE是所有源代碼全部由微軟自行開發(fā)的嵌入式新型操作系統(tǒng),其操作界面雖來
36、源于Windows 95/98,但Windows CE是基于WIN32 API重新開發(fā)、新型的信息設(shè)備的平臺。Windows CE具有模塊化、結(jié)構(gòu)化和基于Win32應(yīng)用程序接口和與處理器無關(guān)等特點(diǎn)。Windows CE不僅繼承了傳統(tǒng)的Windows圖形界面,并且在Windows CE平臺上可以使用Windows 95/98上的編程工具如Visual Basic、Visual C+等、使用同樣的函數(shù)、使用同樣的界面風(fēng)格,使絕大多數(shù)的應(yīng)用軟件只需簡單的修改和移植就可以在Windows CE平臺上繼續(xù)使用。Windows CE并非是專為單一裝置設(shè)計(jì)的,所以微軟為旗下采用Windows CE作業(yè)系統(tǒng)的
37、產(chǎn)品大致分為三條產(chǎn)品線,Pocket PC、Handheld PC及Auto PC。圖2.3展示了Windows CE在多個(gè)領(lǐng)域的廣泛應(yīng)用。1圖2.3 Windows CE在多個(gè)領(lǐng)域的廣泛應(yīng)用作為一個(gè)32位實(shí)時(shí)多任務(wù)操作系統(tǒng),Windows CE可用來建造下一代智能移動和占用內(nèi)存小的設(shè)備。它廣泛支持多種CPU,不依賴于x86體系,可在四種主要的CPU體系結(jié)構(gòu)系列和200多種CPU上運(yùn)行。由于Windows CE是高度組件化的,因此所占用的內(nèi)存空間可以根據(jù)特定產(chǎn)品的要求專門定制,并且伸縮性良好。其優(yōu)點(diǎn)如下:第一,靈活的電源管理功能;第二,使用了對象存儲技術(shù),包括文件系統(tǒng),注冊表,數(shù)據(jù)庫;高性能的
38、按需換頁,共享存儲,交叉處理同步;第三,良好的通信能力;WinSock,RAS,WinINet;第四,支持嵌套中斷;第五,可靠,高效的線程相應(yīng)能力;第六,出色的圖形界面;第七,強(qiáng)大的多任務(wù)能力,256個(gè)優(yōu)先級別;第八,內(nèi)置多媒體處理能力;第九,開發(fā)本錢低。圖2.4 Windows CE的總體架構(gòu)2.2.2 WTL技術(shù)簡介WTL全稱為Windows Template Library,構(gòu)架于ATL之上,采用C+模板技術(shù)來包裝大部窗口控制,并給出一個(gè)與MFC相似的應(yīng)用根本框架。WTL的特性有以下幾點(diǎn):第一,使用C+的強(qiáng)大功能;第二,通用控件的瘦包裝類;第三,短小但功能齊全的應(yīng)用程序框架去掉了曾很流行
39、的Document-View架構(gòu);第四,支持打印和打印預(yù)覽功能;第五,遷移了MFC中的CPoint,CRect,CSize,CString等類;第六,使用了新的消息處理宏,引入了消息別離機(jī)制。22.3 .NET Framework.NET Framework 是支持生成和運(yùn)行下一代應(yīng)用程序和 XML Web Services 的內(nèi)部 Windows 組件。.NET Framework 旨在實(shí)現(xiàn)以下目標(biāo): 第一,提供一個(gè)一致的面向?qū)ο蟮木幊汰h(huán)境,而無論對象代碼是在本地存儲和執(zhí)行,還是在本地執(zhí)行但在 Internet 上分布,或者是在遠(yuǎn)程執(zhí)行的。提供一個(gè)將軟件部署和版本控制沖突最小化的代碼執(zhí)行環(huán)境
40、。第二,提供一個(gè)可提高代碼執(zhí)行平安性的代碼執(zhí)行環(huán)境。第三,提供一個(gè)可消除腳本環(huán)境或解釋環(huán)境的性能問題的代碼執(zhí)行環(huán)境。第四,使開發(fā)人員的經(jīng)驗(yàn)在面對類型大不相同的應(yīng)用程序時(shí)保持一致。第五,按照工業(yè)標(biāo)準(zhǔn)生成所有通信,以確保基于 .NET Framework 的代碼可與任何其他代碼集成。.NET Framework 具有兩個(gè)主要組件:公共語言運(yùn)行庫和 .NET Framework 類庫。公共語言運(yùn)行庫是 .NET Framework 的根底??梢詫⑦\(yùn)行庫看作一個(gè)在執(zhí)行時(shí)管理代碼的代理,它提供內(nèi)存管理、線程管理和遠(yuǎn)程處理等核心效勞,并且還強(qiáng)制實(shí)施嚴(yán)格的類型平安以及可提高平安性和可靠性的其他形式的代碼準(zhǔn)確
41、性。事實(shí)上,代碼管理的概念是運(yùn)行庫的根本原那么。以運(yùn)行庫為目標(biāo)的代碼稱為托管代碼,而不以運(yùn)行庫為目標(biāo)的代碼稱為非托管代碼。.NET Framework 的另一個(gè)主要組件是類庫,它是一個(gè)綜合性的面向?qū)ο蟮目芍赜妙愋图?,可以使用它開發(fā)多種應(yīng)用程序,這些應(yīng)用程序包括傳統(tǒng)的命令行或圖形用戶界面GUI應(yīng)用程序,也包括基于 ASP.NET 所提供的最新創(chuàng)新的應(yīng)用程序如 Web 窗體和 XML Web Services。.NET Framework 可由非托管組件承載,這些組件將公共語言運(yùn)行庫加載到它們的進(jìn)程中并啟動托管代碼的執(zhí)行,從而創(chuàng)立一個(gè)可以同時(shí)利用托管和非托管功能的軟件環(huán)境。.NET Framew
42、ork 不但提供假設(shè)干個(gè)運(yùn)行庫宿主,而且還支持第三方運(yùn)行庫宿主的開發(fā)。例如,ASP.NET 承載運(yùn)行庫以為托管代碼提供可伸縮的效勞器端環(huán)境。ASP.NET 直接使用運(yùn)行庫以啟用 ASP.NET 應(yīng)用程序和 XML Web Services。Internet Explorer 是承載運(yùn)行庫以 MIME 類型擴(kuò)展的形式的非托管應(yīng)用程序的一個(gè)例如。使用 Internet Explorer 承載運(yùn)行庫使得能夠在 HTML 文檔中嵌入托管組件或 Windows 窗體控件。以這種方式承載運(yùn)行庫使得托管移動代碼成為可能,不過它需要進(jìn)行重大改良如不完全受信任的執(zhí)行和獨(dú)立的文件存儲,而這種改良只有托管代碼才能提
43、供。圖顯示了公共語言運(yùn)行庫和類庫與應(yīng)用程序之間以及與整個(gè)系統(tǒng)之間的關(guān)系和托管代碼如何在更大的結(jié)構(gòu)內(nèi)運(yùn)行。3圖 .NET Framework環(huán)境 SOA和Web Service.1 SOA簡介面向效勞的體系結(jié)構(gòu)Service-Oriented Architecture,SOA是一個(gè)組件模型,它將應(yīng)用程序的不同功能單元通過這些效勞之間定義良好的接口和契約聯(lián)系起來。接口是采用中立的方式進(jìn)行定義的,它應(yīng)該獨(dú)立于實(shí)現(xiàn)效勞的硬件平臺、操作系統(tǒng)和編程語言。這使得構(gòu)建在各種這樣的系統(tǒng)中的效勞可以通過一種統(tǒng)一和通用的方式進(jìn)行交互。4這種具有中立的接口定義的特征稱為效勞之間的松耦合。松耦合系統(tǒng)的好處有兩點(diǎn),一點(diǎn)是
44、它的靈活性,另一點(diǎn)是,當(dāng)組成整個(gè)應(yīng)用程序的每個(gè)效勞的內(nèi)部結(jié)構(gòu)和實(shí)現(xiàn)逐漸地發(fā)生改變時(shí),它能夠繼續(xù)存在。而另一方面,緊耦合意味著應(yīng)用程序的不同組件之間的接口與其功能和結(jié)構(gòu)是緊密相連的,因而當(dāng)需要對局部或整個(gè)應(yīng)用程序進(jìn)行某種形式的更改時(shí),它們就顯得非常脆弱。對松耦合的系統(tǒng)的需要來源于業(yè)務(wù)應(yīng)用程序需要根據(jù)業(yè)務(wù)的需要變得更加靈活,以適應(yīng)不斷變化的環(huán)境,比方經(jīng)常改變的政策、業(yè)務(wù)級別、業(yè)務(wù)重點(diǎn)、合作伙伴關(guān)系、行業(yè)地位以及其他與業(yè)務(wù)有關(guān)的因素,這些因素甚至?xí)绊憳I(yè)務(wù)的性質(zhì)。能夠靈活地適應(yīng)環(huán)境變化的業(yè)務(wù)稱為按需On demand業(yè)務(wù),在按需業(yè)務(wù)中,一旦需要,就可以對完成或執(zhí)行任務(wù)的方式進(jìn)行必要的更改。5為了建立
45、體系結(jié)構(gòu)模型,所需要的并不只是效勞描述,還需要定義整個(gè)應(yīng)用程序如何在效勞之間執(zhí)行其工作流。尤其需要找到業(yè)務(wù)的操作和業(yè)務(wù)中所使用的軟件的操作之間的轉(zhuǎn)換點(diǎn)。因此,SOA 應(yīng)該能夠?qū)I(yè)務(wù)的商業(yè)流程與它們的技術(shù)流程聯(lián)系起來,并且映射這兩者之間的關(guān)系。例如,給供給商付款的操作是商業(yè)流程,而更新的零件數(shù)據(jù)庫,以包括進(jìn)新供給的貨物卻是技術(shù)流程。因而,工作流還可以在 SOA 的設(shè)計(jì)中扮演重要的角色。6現(xiàn)在的 SOA逐漸依賴于一些更新的進(jìn)展,這些進(jìn)展是以可擴(kuò)展標(biāo)記語言eXtensible Markup Language,XML為根底的。通過使用基于 XML 的語言稱為 Web 效勞描述語言Web Service
46、s Definition Language,WSDL來描述接口,效勞已經(jīng)轉(zhuǎn)到更動態(tài)且更靈活的接口系統(tǒng)中。圖2.6較清楚的描述了SOA協(xié)議棧的分層結(jié)構(gòu)。圖2.6SOA協(xié)議棧分層結(jié)構(gòu)總結(jié)起來,SOA的幾個(gè)特性主要有以下幾項(xiàng):第一,可從企業(yè)外部訪問;第二,隨時(shí)可用;第三,粗粒度的效勞接口;第四,效勞分級;第五,松散耦合;第六,可重用的效勞及效勞接口設(shè)計(jì)管理;第七,標(biāo)準(zhǔn)化的接口;第八,支持各種消息模式;第九,精確定義的效勞接口由于SOA的種種特性,其優(yōu)點(diǎn)也是顯而易見的:編碼靈活,開發(fā)人員角色明確,支持多種客戶類型,更易維護(hù),更好的伸縮性,更高的可用性。SOA可以看作是B/S模型、XML/Web Ser
47、vice技術(shù)之后的自然延伸。SOA將能夠幫助開發(fā)人員站在一個(gè)新的高度理解企業(yè)級架構(gòu)中的各種組件的開發(fā)、部署形式,它將幫助企業(yè)系統(tǒng)架構(gòu)者以更迅速、更可靠、更具重用性架構(gòu)整個(gè)業(yè)務(wù)系統(tǒng)。較之以往,以SOA架構(gòu)的系統(tǒng)能夠更加沉著地面對業(yè)務(wù)的急劇變化。.2 Web Service的概念Web Service是為實(shí)現(xiàn)“基于Web無縫集成的目標(biāo)而提出的全新概念,希望通過Web Service能夠?qū)崿F(xiàn)不同的系統(tǒng)之間能夠用“軟件-軟件對話的方式相互調(diào)用,打破軟件應(yīng)用、網(wǎng)站和各種設(shè)備之間格格不入的狀態(tài)。Web Service是一個(gè)應(yīng)用程序,它向外界暴露一個(gè)能夠通過Web進(jìn)行調(diào)用的API,這就是說,能夠用編程的方法
48、通過Web調(diào)用來實(shí)現(xiàn)某個(gè)功能的應(yīng)用程序。Web Service是一種新的Web應(yīng)用程序分支,它們是自包含、自描述,模塊化的應(yīng)用,可以在網(wǎng)絡(luò)中被描述、發(fā)布、查找以及通過Web調(diào)用。Web Service平臺需要一套協(xié)議來實(shí)現(xiàn)分布式應(yīng)用程序的創(chuàng)立。任何平臺都有它的數(shù)據(jù)表示方法和類型系統(tǒng)。要實(shí)現(xiàn)互操作性,Web Service平臺必須提供一套標(biāo)準(zhǔn)的類型系統(tǒng),用于溝通不同的平臺、編程語言和組建模型中的不同類型系統(tǒng)??蓴U(kuò)展性標(biāo)記語言XML是Web Service平臺中表示數(shù)據(jù)的根本格式。除了易于建立和易于分析外,XML主要的優(yōu)點(diǎn)在于它基于平臺無關(guān),也與廠商無關(guān)。XML是由萬維網(wǎng)協(xié)會W3C創(chuàng)立,W3C制定
49、的XML SchemaXSD定義了一套標(biāo)準(zhǔn)的數(shù)據(jù)類型,并給出了一種語言來拓展這套數(shù)據(jù)類型。Web Service平臺是用XSD來作為數(shù)據(jù)類型系統(tǒng)的。當(dāng)用某種語言如VB.NET 或C#來構(gòu)造一個(gè)Web Service時(shí),為了符合Web Service標(biāo)準(zhǔn),所有使用的數(shù)據(jù)類型都必須被轉(zhuǎn)換為XSD類型。如想讓它使用在不同的平臺和不同的軟件的不同組織間傳遞,還需要用某種東西將它包裝起來,那就是SOAP協(xié)議。Web Service描述語言WSDL是用計(jì)算機(jī)能閱讀的方式提供的一個(gè)正式描述文檔而基于XML的語言,用于描述Web Service及其函數(shù)、參數(shù)和返回值。因?yàn)槭腔赬ML的,所以WSDL既是機(jī)器可
50、閱讀的,又是人可閱讀的。UDDI即統(tǒng)一描述、發(fā)現(xiàn)和集成Universal Description , Discovery , and Integration,其目的是為電子商務(wù)建立標(biāo)準(zhǔn),UDDI是一套基于Web的、分布式、為Web Service提供的、信息注冊中心的實(shí)現(xiàn)標(biāo)準(zhǔn)標(biāo)準(zhǔn)。Web Service本身其實(shí)是在實(shí)現(xiàn)應(yīng)用程序的通信。現(xiàn)在有兩種應(yīng)用程序通信的方法:RPC遠(yuǎn)程過程調(diào)用和信息傳遞。效勞器暴露出遠(yuǎn)程對象的端口,而客戶端就好似在本地使用這些對象的接口一樣,這樣就隱藏了底層的信息,客戶端也就根本不需要知道對象是在哪臺機(jī)器上。72.4.3 Web Service與SOASOA效勞和Web
51、Service之間的區(qū)別在于設(shè)計(jì)。SOA 概念并沒有確切地定義效勞具體如何交互,而僅僅定義了效勞如何相互理解以及如何交互,這其中的區(qū)別也就是定義如何執(zhí)行流程的戰(zhàn)略與如何執(zhí)行流程的戰(zhàn)術(shù)之間的區(qū)別。而另一方面,Web效勞在需要交互的效勞之間如何傳遞消息有具體的指導(dǎo)原那么;從戰(zhàn)術(shù)上實(shí)現(xiàn)SOA模型最常見的方式是通過 傳遞的SOAP消息。因而,從本質(zhì)上講,Web 效勞是實(shí)現(xiàn)SOA的具體方式之一。Web Service技術(shù)在幾方面滿足了SOA的要求:首先是基于標(biāo)準(zhǔn)訪問的獨(dú)立功能實(shí)體滿足了松耦合要求。在Web Service中所有的訪問都通過SOAP訪問進(jìn)行,用WSDL定義的接口封裝,通過UDDI進(jìn)行目錄查
52、找,可以動態(tài)改變一個(gè)效勞的提供方而無需影響客戶端的配置,外界客戶端根本不關(guān)心所訪問的效勞器端的實(shí)現(xiàn)。其次,適合大數(shù)據(jù)量低頻率訪問符合效勞大顆粒度功能。基于性能和效率平衡的要求,SOA的效勞提供的是大顆粒度的應(yīng)用功能,而且跨系統(tǒng)邊界的訪問頻率也不會象程序間函數(shù)調(diào)用那么頻繁。通過使用WSDL和基于文本Literal的SOAP請求,可以實(shí)現(xiàn)能一次性接收處理大量數(shù)據(jù)。最后,基于標(biāo)準(zhǔn)的文本消息傳遞為異構(gòu)系統(tǒng)提供通訊機(jī)制。Web Service所有的通訊是通過SOAP進(jìn)行的,而SOAP是基于XML的,XML是結(jié)構(gòu)化的文本消息。從最早的EDI開始,文本消息也許是異構(gòu)系統(tǒng)間通訊最好的消息格式,適用于SOA強(qiáng)調(diào)
53、的效勞對異構(gòu)后天宿主系統(tǒng)的透明性。盡管一般認(rèn)為Web Service是實(shí)現(xiàn)SOA最好的方式,但是SOA并不局限于Web Service。其他使用WSDL直接實(shí)現(xiàn)效勞接口并且通過XML消息進(jìn)行通信的協(xié)議也可以包括在SOA之中。CORBA和 IBM的MQ系統(tǒng)通過使用能夠處理WSDL的新特征也可以參與到SOA中來。如果兩個(gè)效勞需要交換數(shù)據(jù),那么它們還會需要使用相同的消息傳遞協(xié)議,但是數(shù)據(jù)接口允許相同的信息交換。 Web Service與.NET FrameworkASP.NET 是使開發(fā)人員能夠使用 .NET Framework 開發(fā)基于 Web 的應(yīng)用程序的宿主環(huán)境。但是,ASP.NET 不止是一
54、個(gè)運(yùn)行庫宿主;它是使用托管代碼開發(fā)網(wǎng)站和通過 Internet 分布的對象的完整結(jié)構(gòu)。Web 窗體和 XML Web Services 都將 IIS 和 ASP.NET 用作應(yīng)用程序的發(fā)布機(jī)制,并且兩者在 .NET Framework 中都具有支持類集合。在應(yīng)用程序邏輯通過托管代碼執(zhí)行時(shí),效勞器如 IIS 和 SQL Server可執(zhí)行標(biāo)準(zhǔn)操作。圖顯示了在不同效勞器環(huán)境中運(yùn)行托管代碼的根本網(wǎng)絡(luò)架構(gòu)。圖 效勞端托管代碼的根本網(wǎng)絡(luò)架構(gòu)XML Web Services 作為基于 Web 的技術(shù)的重要開展,是類似于常見網(wǎng)站的分布式效勞器端應(yīng)用程序組件。但是,與基于 Web 的應(yīng)用程序不同,XML We
55、b Services 組件不具有 UI 并且不以瀏覽器為目標(biāo)。XML Web Services 由旨在供其他應(yīng)用程序使用的可重用的軟件組件組成,所謂的其他應(yīng)用程序包括:傳統(tǒng)的客戶端應(yīng)用程序,基于 Web 的應(yīng)用程序,甚至是其他 XML Web Services。因此,XML Web Services 技術(shù)正迅速地將應(yīng)用程序開發(fā)和部署推向高度分布式 Internet 環(huán)境。.NET Framework 還提供類和工具的集合來幫助開發(fā)和使用 XML Web Services 應(yīng)用程序。XML Web Services 是基于 SOAP一種遠(yuǎn)程過程調(diào)用協(xié)議、XML一種可擴(kuò)展的數(shù)據(jù)格式和 WSDLWe
56、b 效勞描述語言這些標(biāo)準(zhǔn)生成的?;谶@些標(biāo)準(zhǔn)生成 .NET Framework 的目的是為了提高與非 Microsoft 解決方案的互操作性。如果開發(fā)和發(fā)布自己的 XML Web Services,.NET Framework 提供了一組符合所有根底通信標(biāo)準(zhǔn)如 SOAP、WSDL 和 XML的類。使用這些類能夠?qū)⒆⒁饬性谛诘倪壿嬌希鵁o需關(guān)注分布式軟件開發(fā)所需要的通信根底結(jié)構(gòu)。與托管環(huán)境中的 Web 窗體頁相似,XML Web Services 將使用 IIS 的可伸縮通信以本機(jī)語言的速度運(yùn)行。8 SOAP技術(shù)簡介SOAP定義了一種在 客戶端和效勞器端傳輸命令和參數(shù)的機(jī)制。SOAP除了需
57、要使用 傳輸外,不關(guān)心何種操作系統(tǒng)、編程語言或在效勞器端或客戶端使用的對象模型。SOAP的機(jī)制極為簡單??蛻舳税l(fā)送一個(gè)請求給效勞器,調(diào)用相應(yīng)的對象,然后效勞器返回結(jié)果。這些消息是XML格式的,并且封裝成符合 協(xié)議的消息。SOAP通過已有的Internet下層結(jié)構(gòu)來工作。它符合任何路由器、防火墻或代理效勞器。SOAP客戶請求封裝在一個(gè) POST或M-POST包中。SOAP定義了兩種類型的消息,請求和響應(yīng),從而允許客戶端能夠遞交一個(gè)遠(yuǎn)端請求,允許效勞器端能夠響應(yīng)這些請求。SOAP不需要任何對象模型,也不需要通過其他的通訊實(shí)體來使用對象模型。在防止對象模型的根底上,SOAP將大局部對象功能如初始化代
58、碼和垃圾堆積留給客戶端和效勞器端工作的底層,同時(shí)其他功能如信號編輯那么可以留給SOAP綜合已有的應(yīng)用程序和底層結(jié)構(gòu)來完成。SOAP可以使用任何語言來完成,只要客戶端發(fā)送正確SOAP請求也就是說,傳遞一個(gè)適宜的參數(shù)給一個(gè)實(shí)際的遠(yuǎn)端效勞器。早期實(shí)現(xiàn)SOAP功能的有Java, Perl, 和Windows版本。當(dāng)將每個(gè)功能變?yōu)镾OAP實(shí)體能夠理解的參數(shù)和響應(yīng)后例如,數(shù)據(jù)保存在一個(gè)XML元素中,并封裝在 消息中,它就可以和其他的SOAP功能交互作用。92.6 網(wǎng)絡(luò)流媒體的特點(diǎn)流媒體是指采用流式傳輸?shù)姆绞皆贗nternet播放的媒體格式,其播出效果受網(wǎng)絡(luò)帶寬的影響。商家用一個(gè)視頻傳送效勞器把節(jié)目當(dāng)成數(shù)據(jù)
59、包發(fā)出,傳送到網(wǎng)絡(luò)上。用戶通過解壓設(shè)備對這些數(shù)據(jù)進(jìn)行解壓后,節(jié)目就會像發(fā)送前那樣顯示出來。流媒體實(shí)際指的是一種新的媒體傳送方式,而非一種新的媒體。一般多媒體數(shù)據(jù)下載時(shí),需要下載完畢才能觀看,而流媒體的特點(diǎn)是邊下載邊播放,不占用客戶硬盤空間,但需要有一定的網(wǎng)絡(luò)帶寬支持,如果帶寬低于流媒體需要的帶寬,會造成視頻和音頻數(shù)據(jù)的停頓。與單純的下載方式相比,這種對多媒體文件邊下載邊播放的流式傳輸方式具有以下優(yōu)點(diǎn):實(shí)時(shí)傳輸和實(shí)時(shí)播放:流化多媒體使得用戶可以立即播放音頻和視頻信號,無須等待文件傳輸結(jié)束,這對獲取存儲在效勞器上的流化音頻、視頻文件,現(xiàn)場回訪音頻和視頻流都具有十分重要的意義。節(jié)省存儲空間:采用流技
60、術(shù),可以節(jié)省客戶端的大量存儲空間,在客戶端只需由播放器對流化音、視頻信息進(jìn)行回放即可。信息數(shù)據(jù)量小:現(xiàn)場流都比原始信息的數(shù)據(jù)量要小,并且用戶不必將所有下載的數(shù)據(jù)都同時(shí)存儲在本地存儲器上,可以邊下載邊回放,從而節(jié)省了大量的磁盤空間。從網(wǎng)絡(luò)開展來看,采用流媒體技術(shù)有利于提高網(wǎng)絡(luò)傳輸速度,為用戶節(jié)約大量時(shí)間,調(diào)動用戶上網(wǎng)的積極性。從節(jié)目質(zhì)量看,流媒體技術(shù)雖然使視音頻信號質(zhì)量有所下降,但對用戶不會造成視聽障礙。隨著網(wǎng)絡(luò)的開展,網(wǎng)上信息量越來越多,用戶可以享受到更多的流媒體視頻或音頻,也可自己將本地多媒體文件上傳至效勞器,生成可供其他人分享的流媒體文件。10第三章系統(tǒng)總體設(shè)計(jì)3.1 系統(tǒng)概述及功能3.1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人事保管檔案勞動合同書
- 中小學(xué)教師聘用合同模板庫
- 互聯(lián)網(wǎng)+農(nóng)產(chǎn)品銷售合同
- 二手房交易代理傭金合同
- 專業(yè)育嬰師雇傭合同條款
- 臨時(shí)供用水合同范本
- 中小學(xué)校食堂食材供應(yīng)合同
- 2025年健身器材租賃服務(wù)預(yù)付費(fèi)合同
- 二手挖掘機(jī)購銷合同
- 三兄妹遺產(chǎn)分配合同協(xié)議
- 勞動法概述勞動法與新經(jīng)濟(jì)業(yè)態(tài)的結(jié)合
- 華為經(jīng)營管理-華為的研發(fā)管理(6版)
- 鋰離子電池生產(chǎn)工藝流程圖
- 平衡計(jì)分卡-化戰(zhàn)略為行動
- 幼兒園小班下學(xué)期期末家長會PPT模板
- 礦山安全培訓(xùn)課件-地下礦山開采安全技術(shù)
- 【課件】DNA片段的擴(kuò)增及電泳鑒定課件高二下學(xué)期生物人教版(2019)選擇性必修3
- GB/T 6417.1-2005金屬熔化焊接頭缺欠分類及說明
- 2023年湖北成人學(xué)位英語考試真題及答案
- 《社會主義市場經(jīng)濟(jì)理論(第三版)》第七章社會主義市場經(jīng)濟(jì)規(guī)則論
- 《腰椎間盤突出》課件
評論
0/150
提交評論