




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、分類號 單位代碼 密 級 學(xué) 號 學(xué)生畢業(yè)設(shè)計(論文)題 目基于WebSocket的物聯(lián)網(wǎng)實時通信技術(shù)應(yīng)用作 者XXX院 (系)信息工程學(xué)院專 業(yè)計算機科學(xué)與技術(shù)指導(dǎo)教師XXX答辯日期 2014 年 5 月 17 日XXX畢業(yè)設(shè)計(論文)誠信責(zé)任書本人鄭重聲明:所呈交的畢業(yè)設(shè)計(論文),是本人在導(dǎo)師的指導(dǎo)下獨立進行研究所取得的成果。畢業(yè)設(shè)計(論文)中凡引用他人已經(jīng)發(fā)表或未發(fā)表的成果、數(shù)據(jù)、觀點等,均已明確注明出處。盡我所知,除文中已經(jīng)注明引用的內(nèi)容外,本論文不包含任何其他個人或集體已經(jīng)公開發(fā)表或撰寫過的研究成果。對本文的研究做出重要貢獻的個人和集體,均已在文中以明確方式標(biāo)明。本人畢業(yè)設(shè)計(論文
2、)與資料若有不實,愿意承擔(dān)一切相關(guān)的法律責(zé)任。 論文作者簽名: 年 月 日摘 要物聯(lián)網(wǎng)技術(shù)是當(dāng)代信息技術(shù)的重要組成之一,與名同義,物聯(lián)網(wǎng)就是連接物品的網(wǎng)絡(luò)。物聯(lián)網(wǎng)通過智能感知、識別技術(shù)與普適計算、廣泛應(yīng)用于網(wǎng)絡(luò)的融合中,形成人與物、物與物相聯(lián),實現(xiàn)信息化、遠程管理控制和智能的網(wǎng)絡(luò)1。物聯(lián)網(wǎng)用途廣泛,遍及醫(yī)院護理、照明管控、智能交通等多個領(lǐng)域。本文將物聯(lián)網(wǎng)技術(shù)和WebSocket技術(shù)相結(jié)合,設(shè)計并實現(xiàn)了一個小型的遠程心率檢測及報警系統(tǒng)的上位機,以求減少醫(yī)院在人力物力方面的投入,方便醫(yī)生在遠程通過客戶端瀏覽器實時查看病人的心率。為了擴大使用范圍和便于日后的升級維護工作,系統(tǒng)結(jié)構(gòu)采用B/S模式,在后
3、臺利用傳感器采集患者的心率信息并將其發(fā)送到服務(wù)器端,服務(wù)器在接收心率信息的同時利用WebSocket技術(shù)實時推送心率信息到客戶端瀏覽器,供醫(yī)生查看和分析。最后的測試結(jié)果顯示本系統(tǒng)操作簡便,具有良好的可擴展性,在效率方面也符合心率檢測在實時性方面的要求。關(guān)鍵字:物聯(lián)網(wǎng)、傳感器、WebSocketABSTRACTThe technology of the Internet of things is one of the important components of modern information technology, and the name of Internet of things
4、is synonymous, connecting articles network. Internet of things through integration of intelligent perception, recognition technology and pervasive computing, is widely used in network, form a connected people and things, things and things, to realize the information management, remote control and in
5、telligent network . The Internet of things is widely used in many fields, hospital care, lighting control, intelligent transportation.In this paper, the network technology and WebSocket technology, the design and implementation of a remote computer heart rate detecting small and alarm system, in ord
6、er to reduce hospital in human and material resources, convenient for the doctor to the client browser view real-time heart rate in patients with remote. In order to expand the scope of use and which is convenient for future maintenance work, the system uses the B/S mode, in the background using hea
7、rt rate sensor were collected and sent to the server, the server in the receiving rate information and at the same time, using the technology of WebSocket real-time push heart rate information to the client browser, for the doctor to view and analyze. The final test results show that the system is s
8、imple, has good scalability, in terms of efficiency but also meet the requirements of heart rate detection in real-time.Keywords: Internet of things, Sensor, WebSocket目 錄目 錄摘 要IABSTRACTII第一章 緒 論11.1研究背景及意義11.2國內(nèi)外現(xiàn)狀11.2.1國外物聯(lián)網(wǎng)現(xiàn)狀11.2.2國內(nèi)物聯(lián)網(wǎng)現(xiàn)狀31.3論文組織結(jié)構(gòu)4第二章 相關(guān)技術(shù)介紹52.1物聯(lián)網(wǎng)技術(shù)簡介52.2 Nodejs技術(shù)52.3 jQuery Flo
9、t62.4 HTML5 WebSocket72.4.1 WebSocket簡述72.4.2 WebSocket的優(yōu)勢72.4.3 WebSocket 握手協(xié)議102.4.4 WebSocket 接口112.4.5 瀏覽器和服務(wù)器支持情況132.4.6 WebSocket的局限性142.5 本章小結(jié)14第三章 系統(tǒng)分析與設(shè)計153.1心率檢測系統(tǒng)分析153.2 系統(tǒng)需求分析153.3 系統(tǒng)架構(gòu)163.4 服務(wù)器推送技術(shù)可行性分析163.5 服務(wù)器端設(shè)計173.6 客戶端設(shè)計203.7本章小結(jié)26第四章 系統(tǒng)性能測試及結(jié)果274.1 服務(wù)器端測試274.2 客戶端測試274.3 本章小結(jié)30第五章
10、 總結(jié)與展望315.1論文工作總結(jié)315.2展望31參考文獻32致 謝33III榆林學(xué)院本科畢業(yè)設(shè)計(論文)第一章 緒 論1.1研究背景及意義物聯(lián)網(wǎng)技術(shù)的出現(xiàn)對社會的發(fā)展產(chǎn)生了深刻的影響,它在現(xiàn)有網(wǎng)絡(luò)的基礎(chǔ)上結(jié)合當(dāng)代傳感技術(shù)將一切智能的物體互相連接起來用以方便人們的衣食住行2。物聯(lián)網(wǎng)的強大之處在于它可以把你所能想象到的任何物品都連接到網(wǎng)絡(luò)上,同時可以對它們進行管理、控制或者監(jiān)控。目前,物聯(lián)網(wǎng)技術(shù)已廣泛用在工業(yè)控制、環(huán)境保護、醫(yī)療護理、照明管控、智能交通、智能家居、智能消防、水系監(jiān)測、食品安全和國防安全等多個領(lǐng)域。物聯(lián)網(wǎng)的應(yīng)用前景非常廣闊,它給人們帶來的方便也是想象不盡的,本文嘗試從物聯(lián)網(wǎng)實時通
11、信著手,構(gòu)建一個供醫(yī)院對病人心率進行實時檢測的心率檢測系統(tǒng)。由于通過分析心率信號可以判斷一個人的健康狀況,所以對這類生理信息進行日常監(jiān)護與檢測對患有心血管疾病的患者和老年人的預(yù)防診治有及其重要的意義。尤其是對這些生理信息進行持久的跟蹤記錄,就可以依據(jù)這些記錄的變化和走勢大致了解患者的健康趨勢。1.2國內(nèi)外現(xiàn)狀物聯(lián)網(wǎng)的概念來自于麻省理工學(xué)院的Auto-ID研究中心,它是由Kevin Ash-ton教授于1999年最早提出,起先,它的含義是指所有物品通過射頻識別傳感裝置連接到Internet,實現(xiàn)智能化識別和控制。2005年11月17日在在突尼斯舉行的信息社會世界峰會上,國際電信聯(lián)盟(ITU)對物
12、聯(lián)網(wǎng)的概念進行了擴展,提出了何時刻、任何地點、任意物體之間的互聯(lián),無所不在的網(wǎng)絡(luò)和無所不在的計算的新概念。從此物聯(lián)網(wǎng)的覆蓋范圍也得到了大大的拓展,它不再是單純的基于射頻識別的物聯(lián)網(wǎng),而是指包括射頻識別、激光掃描、GPRS、氣體感應(yīng)等多種新技術(shù)的物聯(lián)網(wǎng)。1.2.1國外物聯(lián)網(wǎng)現(xiàn)狀目前,國外對物聯(lián)網(wǎng)的研究主要集中在歐洲各國、美國、日本和韓國等國家中,這些國家都對物聯(lián)網(wǎng)的研究與應(yīng)用給予高度重視,在政策上提供了大力支持,視物聯(lián)網(wǎng)為提升綜合國力和促進經(jīng)濟發(fā)展的重要動力,同時相繼啟動了以物聯(lián)網(wǎng)為基礎(chǔ)的國家性區(qū)域戰(zhàn)略規(guī)劃。現(xiàn)階段各國物聯(lián)網(wǎng)的發(fā)展現(xiàn)狀如下:1.歐盟33榆林學(xué)院本科畢業(yè)設(shè)計(論文)針對物聯(lián)網(wǎng)技術(shù)的
13、研究和發(fā)展,歐盟專家們提出了基于物聯(lián)網(wǎng)技術(shù)的“行動計劃”,該計劃詳細描述了物聯(lián)網(wǎng)技術(shù)的應(yīng)用前景,并且強調(diào)了歐盟各成員國對物聯(lián)網(wǎng)管理的決心,以努力確保歐盟在物聯(lián)網(wǎng)研究進展中的話語權(quán)。為了實現(xiàn)歐盟在物聯(lián)網(wǎng)智能基礎(chǔ)設(shè)施開發(fā)方面領(lǐng)先世界的目標(biāo),歐盟啟動了超過90項的物聯(lián)網(wǎng)項目研究,其中單獨對ICT的研發(fā)投資就高達4億歐元,此外歐盟還于2011到2013年期間每年新增2億歐元進一步加強研究的進度,同時專項撥款3億歐元用于幫助物聯(lián)網(wǎng)公司的項目建設(shè)3。在管理上歐盟制定了統(tǒng)一的物聯(lián)網(wǎng)標(biāo)準(zhǔn),同時還提供了一個有效的分布式管理架構(gòu),用于方便其各子管理機構(gòu)公開、公平、盡職地履行管理職責(zé)。歐盟的物聯(lián)網(wǎng)研究領(lǐng)域囊括了汽車
14、、能源、航空、航天等18個應(yīng)用領(lǐng)域,以及架構(gòu)、識別和數(shù)據(jù)處理等12個關(guān)鍵技術(shù)領(lǐng)域。目前歐盟已經(jīng)實施的物聯(lián)網(wǎng)應(yīng)用有藥品公司使用專用序列碼標(biāo)識藥品、電能公司向用戶提供智能電子計費系統(tǒng)、各汽車公司開始生產(chǎn)智能汽車等。與此同時,許多以物聯(lián)網(wǎng)應(yīng)用為目標(biāo)的小公司的新創(chuàng)意、新產(chǎn)品也在不斷的豐富著歐盟的物聯(lián)網(wǎng)市場。2.美國2009年奧巴馬就IBM公司首席執(zhí)行官提出的“智慧地球”概念,將物聯(lián)網(wǎng)列為振興經(jīng)濟的兩大重點之一,同時開啟了大量的物聯(lián)網(wǎng)技術(shù)研究。奧巴馬政府在鼓勵物聯(lián)網(wǎng)技術(shù)發(fā)展的政策方面主要體現(xiàn)在能源的推廣,寬帶和醫(yī)學(xué)三個領(lǐng)域。2009年經(jīng)濟復(fù)蘇和再投資法的提出意在從醫(yī)療、科技、教育、能源等領(lǐng)域著手,通過增
15、加政府的投資配合政策的便利促進物聯(lián)網(wǎng)技術(shù)的研究和應(yīng)用。到2013年,美國已經(jīng)完成了物聯(lián)網(wǎng)平臺的開發(fā),開發(fā)者通過該平臺可以利用無線網(wǎng)絡(luò)進行物聯(lián)網(wǎng)開發(fā)。隨后思科公司在物聯(lián)網(wǎng)平臺的基礎(chǔ)上,實現(xiàn)了無線家庭安全控制面板,思科因此獲得了2012年度物聯(lián)網(wǎng)行業(yè)突出貢獻獎的提名。另據(jù)思科報告稱,物聯(lián)網(wǎng)將會是下一個萬億美元級別的新興信息技術(shù)產(chǎn)業(yè),而美國將會占據(jù)未來物聯(lián)網(wǎng)市場份額的三分之一4。3.日本2004年日本提出了基于物聯(lián)網(wǎng)的國家信息化戰(zhàn)略U-Japan,策略的目的是為了促進新一代信息技術(shù)革命的誕生,使日本成為一個無處不在的便利社會。日本政府從汽車產(chǎn)業(yè)、建筑行業(yè)、能源行業(yè)和遠程監(jiān)控等方面著手,在這些領(lǐng)域廣泛
16、推廣物聯(lián)網(wǎng)技術(shù)及其產(chǎn)品的應(yīng)用。在日本社會,物聯(lián)網(wǎng)已經(jīng)滲透到了人們生活的基本必需品中,日本最新推出的智能家電可供用戶利用手機點餐、通過手機查看和管理任何連接到物理網(wǎng)的家用電器的運行狀態(tài),比如,通過遠程網(wǎng)絡(luò)調(diào)節(jié)空調(diào)的溫度、控制電飯煲做飯、控制熱水器燒水,不管人在什么地方,只要通過物聯(lián)網(wǎng)就可方便的監(jiān)控和管理自己的住宅。據(jù)2012年的數(shù)據(jù)顯示,日本已有約317萬多的物聯(lián)網(wǎng)用戶,這些物聯(lián)網(wǎng)用戶主要遍及在電子商務(wù)、監(jiān)控、交通、物流等9個領(lǐng)域5。從日本物聯(lián)網(wǎng)技術(shù)發(fā)展的趨勢可以預(yù)見,在未來通信行業(yè)將會是日本物聯(lián)網(wǎng)發(fā)展的重點,并且這一行業(yè)的發(fā)展會沖擊日本已達飽和狀態(tài)的手機放號市場,給日本的經(jīng)濟發(fā)展帶來新的動力。
17、4.韓國和日本一樣,韓國同樣重視物聯(lián)網(wǎng)在本國信息產(chǎn)業(yè)中的發(fā)展和應(yīng)用。早在97年韓國就曾提出在2011年之前完成韓國物理網(wǎng)普及的短程規(guī)劃,期間韓國政府就物理網(wǎng)的研究制定了8項專項計劃。2010年韓國效仿美國將物聯(lián)網(wǎng)列為促進韓國社會經(jīng)濟增長的重點,積極推進韓國物聯(lián)網(wǎng)社會的建設(shè)和發(fā)展。到目前韓國基本上完成了基于IPV6的物聯(lián)網(wǎng)基礎(chǔ)設(shè)施的建設(shè),這一建設(shè)的完成極大的提高了韓國通信網(wǎng)絡(luò)的質(zhì)量,為韓國物聯(lián)網(wǎng)的商業(yè)化作了基礎(chǔ)性鋪墊。一流的物聯(lián)網(wǎng)基礎(chǔ)設(shè)施不僅鞏固了韓國的國防安全,而且對韓國的教育行業(yè)、醫(yī)療行業(yè)、食品行業(yè)、航空工業(yè)都產(chǎn)生了巨大的影響。物聯(lián)網(wǎng)技術(shù)的應(yīng)用已深刻的融入了韓國民眾的日常生活中,在韓國包括農(nóng)
18、業(yè)、工業(yè)、娛樂業(yè)隨處可見智能的物聯(lián)網(wǎng)技術(shù)產(chǎn)品,有數(shù)據(jù)統(tǒng)計韓國在2013年的物聯(lián)網(wǎng)產(chǎn)業(yè)規(guī)模就高達50萬億韓元5。1.2.2國內(nèi)物聯(lián)網(wǎng)現(xiàn)狀我國的物聯(lián)網(wǎng)研究起步比較晚,在2009年溫家寶總理的“感知中國”講話之后,我國政府才將物聯(lián)網(wǎng)列為國家新興戰(zhàn)略產(chǎn)業(yè),并在江蘇省無錫市建立了第一個物聯(lián)網(wǎng)研究中心。雖然如此,但是我國的物聯(lián)網(wǎng)技術(shù)研發(fā)水平仍居于世界前列,目前我國還是物聯(lián)網(wǎng)標(biāo)準(zhǔn)的主導(dǎo)國之一,我國在物聯(lián)網(wǎng)領(lǐng)域擁有的專利數(shù)量最多。這些完全得益于我國擁有特殊的發(fā)展物聯(lián)網(wǎng)的現(xiàn)實背景,首先,我國的無線通信網(wǎng)絡(luò)和覆蓋率都很高,具有發(fā)展物聯(lián)網(wǎng)的基礎(chǔ)。其次,我們國家是世界第二大經(jīng)濟體,擁有雄厚的經(jīng)濟實力發(fā)展物聯(lián)網(wǎng)。在國家
19、宏觀的政策鼓勵下,各省份的物聯(lián)網(wǎng)發(fā)展勢頭迅猛,取得的成就也數(shù)不勝數(shù)。例如,西安的優(yōu)勢微電子公司于2009年成功了研制出“唐芯1號”物聯(lián)網(wǎng)芯片,至此打開了我國攻克物聯(lián)網(wǎng)技術(shù)的大門。2010年江南大學(xué)組建了全國第一個物聯(lián)網(wǎng)工程學(xué)院,用于培育物聯(lián)網(wǎng)技術(shù)專業(yè)人才。2011年長安大學(xué)建立了全國第一個國家級的科技園,重點發(fā)展RFID技術(shù)。2012年重慶郵電大學(xué)研發(fā)的“渝芯1號”芯片將我國物聯(lián)網(wǎng)技術(shù)帶入了物聯(lián)網(wǎng)領(lǐng)域的領(lǐng)先水平?,F(xiàn)階段我國的物聯(lián)網(wǎng)發(fā)展問題主要是,一、缺乏核心技術(shù),讀寫器和芯片過度依賴其他國家。二、RFID技術(shù)標(biāo)準(zhǔn)缺位。三、市場因素限制RFID標(biāo)簽量化應(yīng)用。四、國內(nèi)企業(yè)沒有競爭優(yōu)勢,管理理念保守
20、。針對我國的物聯(lián)網(wǎng)現(xiàn)狀,我國的物聯(lián)網(wǎng)發(fā)展目標(biāo)是把我國建設(shè)成為一個物聯(lián)網(wǎng)技術(shù)創(chuàng)新性的國家,(1)自主創(chuàng)新能力明顯增強,(2)具有國際競爭力的產(chǎn)業(yè)體系,(3)物聯(lián)網(wǎng)水平顯著提升6。物聯(lián)網(wǎng)作為新興推動世界經(jīng)濟高速發(fā)展的動力因子,在2011我國的物聯(lián)網(wǎng)產(chǎn)業(yè)規(guī)模已達到2.5千億人民幣,預(yù)測數(shù)據(jù)顯示這一數(shù)據(jù)在2015年會高達5千億元。伴隨著國家政策的主導(dǎo)和物聯(lián)網(wǎng)技術(shù)的不斷革新,物聯(lián)網(wǎng)將會對提升我國國民經(jīng)濟生產(chǎn)力產(chǎn)生越來越大的影響力,它會更加徹底的改變我們的生活方式。1.3論文組織結(jié)構(gòu)本文首先研究和分析了國內(nèi)外物聯(lián)網(wǎng)的發(fā)展?fàn)顩r,接著對HTML5中的WebSocket協(xié)議進行了深入研究,通過對HTML5 We
21、bSocket協(xié)議和傳統(tǒng)服務(wù)器推送技術(shù)的對比分析,得出了HTML5的WebSocket在實時領(lǐng)域的吞吐量優(yōu)勢和時延優(yōu)勢。最后將HTML5 WebSocket和Nodejs技術(shù)相結(jié)合應(yīng)用于項目中進行驗證,結(jié)果指明了HTML5 WebSocket在實時領(lǐng)域的優(yōu)越性與可行性。本文一共分為五章,各個章節(jié)的具體內(nèi)容安排如下:第一章:緒論。在緒論中對心率檢測系統(tǒng)的研究背景和意義做了簡要的說明,引出了本論文的研究目的,然后對物聯(lián)網(wǎng)的國內(nèi)外現(xiàn)狀進行了全面闡述,同時對物聯(lián)網(wǎng)基礎(chǔ)上的心率檢測系統(tǒng)做出了概要介紹。最后對論文的框架結(jié)構(gòu)進行了細致說明。第二章:相關(guān)技術(shù)介紹。首先大致介紹了物聯(lián)網(wǎng)的概念,并且概況了物聯(lián)網(wǎng)技
22、術(shù)的主要特征和關(guān)鍵技術(shù);其次,闡述了Nodejs作為高并發(fā)實時Web服務(wù)器的強大性能及其優(yōu)勢所在;接著介紹了客戶端圖形顯示的jQuery Flot庫,最后詳細介紹了WebSocket的概念,分析了WebSocket的特性和功能,同時對WebSocket的使用和瀏覽器、服務(wù)器支持情況進行了簡單介紹。第三章:系統(tǒng)分析與設(shè)計。本章首先闡明了心率檢測系統(tǒng)的現(xiàn)實意義,接著對心率檢測系統(tǒng)的功能模塊和系統(tǒng)架構(gòu)進行了說明,在結(jié)尾利用WebSocket和Nodejs技術(shù)分別完成了系統(tǒng)的客戶端和服務(wù)器端的實現(xiàn)。第四章:系統(tǒng)性能測試及結(jié)果。本章根據(jù)系統(tǒng)的功能描述有針對性的分別對客戶端和服務(wù)器端進行了系統(tǒng)性測試,最后
23、結(jié)果驗證了系統(tǒng)的可行性。第五章:總結(jié)與展望。本章是對全文的總結(jié)和展望,對論文進行總結(jié)是為了梳理知識脈絡(luò),查漏補缺方便以后繼續(xù)研究。展望是提出個人對系統(tǒng)的預(yù)想,以方便后續(xù)研究的開展。第二章 相關(guān)技術(shù)介紹2.1物聯(lián)網(wǎng)技術(shù)簡介物聯(lián)網(wǎng)是指在現(xiàn)有互聯(lián)網(wǎng)的基礎(chǔ)上,利用感知、識別、GPRS、激光掃描、氣體感應(yīng)等技術(shù)把物體連接到互聯(lián)網(wǎng)上,實現(xiàn)物物之間信息交互的網(wǎng)絡(luò)。利用物聯(lián)網(wǎng)可實現(xiàn)隨時隨地的遠程定位、監(jiān)控和管理,物聯(lián)網(wǎng)在本質(zhì)上是互聯(lián)網(wǎng)的延伸和拓展,它的核心是創(chuàng)新,任何涉及到信息技術(shù)的應(yīng)用都可以劃入物聯(lián)網(wǎng)的范圍,因此也有人說物聯(lián)網(wǎng)是業(yè)務(wù)加應(yīng)用的網(wǎng)絡(luò)。物聯(lián)網(wǎng)由五個層構(gòu)成,分別是感知層、接入層、網(wǎng)絡(luò)層、支撐層、和應(yīng)
24、用層:感知層:主要完成信息的收集與處理;接入層:主要負責(zé)各類設(shè)備的網(wǎng)絡(luò)接入;網(wǎng)絡(luò)層:網(wǎng)絡(luò)層為現(xiàn)有的互聯(lián)網(wǎng),主要完成信息的遠距離傳輸;支撐層:支撐層又稱中間件或者業(yè)務(wù)層,主要完成信息的表達與處理, 最終達到語義互操作和信息共享的目的;應(yīng)用層:應(yīng)用層主要完成服務(wù)發(fā)現(xiàn)和服務(wù)呈現(xiàn)的工作。物聯(lián)網(wǎng)主要涉及三項關(guān)鍵技術(shù):1. 射頻識別技術(shù)(RFID):射頻識別是一種基于無線電的對目標(biāo)物識別并進行讀寫數(shù)據(jù)的通信技術(shù)。射頻識別技術(shù)處于感知層,射頻標(biāo)簽包含了利用磁信號存儲的數(shù)據(jù)信息,主要被用于附著在物聯(lián)網(wǎng)的終端物體上,通過射頻標(biāo)簽就可以完成對標(biāo)識物的自動識別和追蹤。2. 傳感器技術(shù):傳感器好比是人的感官器官,主要
25、用于感知被測物體相關(guān)信息的一種物理檢測裝置,它利用材料自身的物理屬性,將檢測物狀態(tài)的變化以電信號的形式輸出到接收端。傳感器也是目前物聯(lián)網(wǎng)應(yīng)用中獲取外界信息的主要途徑和手段。3. 嵌入式技術(shù):嵌入式技術(shù)是融合了計算機軟硬件技術(shù)和集成電路技術(shù)的復(fù)雜技術(shù)。物聯(lián)網(wǎng)中的一切智能終端產(chǎn)品無一不例外的都應(yīng)用了切入式技術(shù),切入式的表現(xiàn)形式主要是將具有特定功能的芯片嵌入到被管控的物體內(nèi)部,以實現(xiàn)程序指令控制的目的7。2.2 Nodejs技術(shù)Nodejs是基于谷歌Chrome運行時構(gòu)建的網(wǎng)絡(luò)服務(wù)應(yīng)用平臺,它借助了Google的V8引擎性能好、速度快的優(yōu)勢,廣泛的被用于搭建快速的,易于擴展的網(wǎng)絡(luò)應(yīng)用。Nodejs的
26、特點是基于事件驅(qū)動的單線程模式,采用異步非阻塞的I/0流程運行,雖然Nodejs是單線程模型,但是它仍可以對多任務(wù)進行并行處理,事實上它是通過事件的輪詢實現(xiàn)并行任務(wù)的操作的,也正因為如此使得利用Nodejs編寫出的服務(wù)器應(yīng)用程序即安全可靠而且便于擴展8。Nodejs的強大之處在于它支持Javascript運行在服務(wù)器端,因為瀏覽器所能支持的語言極其有限,所以要想在瀏覽器端和服務(wù)器端之間共享代碼就只能使用JavaScript來完成,剛好Nodejs就支持這一點。此外,Nodejs還處在完善階段,自2009年推出的輕量級API庫到現(xiàn)在,在廣大Nodejs愛好者和相關(guān)專家的不懈努力下,目前Nodej
27、s已發(fā)布了大量的擴展庫,這些擴展庫以模塊的形式劃分不同的功能,其中有連接數(shù)據(jù)庫的模塊、相關(guān)軟件驅(qū)動的模塊、加密模塊、GUI模塊和網(wǎng)絡(luò)編程模塊等,這些功能模塊對Nodejs的開發(fā)提供了強有力的支持9。目前在工程上已經(jīng)證明Nodejs和傳統(tǒng)的服務(wù)器腳本相比,Nodejs的非阻塞I/O能夠極大的提高程序并發(fā)的能力,其次在執(zhí)行效率和成本上,Nodejs也大大超過了JAVA、RUBY和C語言開發(fā)的非阻塞服務(wù),另外在代碼量上Nodejs的表現(xiàn)也是最優(yōu)和最簡單的10。2.3 jQuery Flot Flot是一個基于jQuery的開源JavaScript庫,是一個純粹的 jQuery JavaScript
28、繪圖庫,主要被用來在網(wǎng)頁上繪制圖表。Flot具有體積小、運行速度快、支持折線圖、條形圖、扇形圖、堆棧圖和實時更新圖等多種圖形顯示的特點,因此深受廣大網(wǎng)頁開發(fā)人員的青睞。此外Flot是完全免費的,其自身尚在不斷的擴充和完善當(dāng)中,但這并不影響它的使用性能,因為對于一般的圖形繪制,使用Flot完全可以實現(xiàn)用戶的所有需求。Flot提供的接口非常簡單而且功能豐富,在使用Flot繪制圖形時只需按照五個步驟:1.引入檔案,2.設(shè)置定位點,3.準(zhǔn)備數(shù)據(jù),4.定義軸屬性,5.調(diào)用$.plot,使用不到20行的代碼就可完成一張圖表的繪制,所以這對沒有繪圖經(jīng)驗的開發(fā)人員來說是一個很不錯的的選擇,只要有JavaScr
29、ipt基礎(chǔ)任何人都可以輕松掌握Flot。在執(zhí)行效能方面, Flot可在一張圖形上完成1000個數(shù)據(jù)點以上的圖形顯示;在實時性方面,Flot可以100毫秒的速度完成一次圖形的重繪;在交互性方面,F(xiàn)lot支持放大縮小以及鼠標(biāo)追蹤的功能。目前支持Flot的瀏覽器有IE、Firefox、Chrome、Safar及Opera等, 由于Flot使用了HTML5 的Canvas來繪制圖表,所以對于IE8或是更早以前的版本,可能需要用excanvas模擬Canvas功能讓Flot也可以在IE8及早前的版本中使用。2.4 HTML5 WebSocket在HTML5之前的web通信都是單向的,服務(wù)器在推送數(shù)據(jù)時不
30、能接收瀏覽器的數(shù)據(jù),瀏覽器在接收數(shù)據(jù)時不能發(fā)送信息給服務(wù)器。對于服務(wù)器和瀏覽器需要雙向同時通信的web應(yīng)用在HTML4時代是無法實現(xiàn)的,相關(guān)應(yīng)用只能以C/S的模型實現(xiàn),其主要原因在于實現(xiàn)瀏覽器通信的http協(xié)議不能完成雙工通信。為此WebSocket的提出就是為了解決此類問題,WebSocket是在HTML5中引入的新協(xié)議之一,利用WebSocket可實現(xiàn)瀏覽器和服務(wù)器之間的全雙工通信。WebSocket出現(xiàn)的另外一個目的便是要代替以往的輪詢技術(shù)和Comet技術(shù),希望通過WebSocket協(xié)議將基于C/S的應(yīng)用轉(zhuǎn)移到瀏覽器上。2.4.1 WebSocket簡述WebSocket是由WebSoc
31、ket協(xié)議和WebSocket接口構(gòu)成的,WebSocket協(xié)議主要負責(zé)完成客戶端和服務(wù)器端握手連接的建立,它允許使用任何服務(wù)器端的編程語言實現(xiàn)。當(dāng)然只有瀏覽器和服務(wù)器都遵循了同樣的協(xié)議,才能建立起TCP連接,才可以有后續(xù)的通信11。WebSocket接口主要是供程序員調(diào)用以完成特殊的功能,前端開發(fā)人員可以通過該接口提供的一些操作,訪問實現(xiàn)了WebSocket的服務(wù)器,從而實現(xiàn)與服務(wù)器之間的實時通信。2.4.2 WebSocket的優(yōu)勢對于實時類的Web應(yīng)用,HTML5提出了WebSocket的實現(xiàn)方式。和過去的輪詢技術(shù)等相比,HTML5的WebSocket表現(xiàn)出了非常強大而且無法超越的優(yōu)勢。
32、其中最重要的是降低了不必要的的網(wǎng)路開銷。因為單獨一次HTTP請求就會附帶超過大約800字節(jié)的HTTP頭信息,但是如果使用WebSocket協(xié)議代替HTTP,那么每一個消息就都是以一個WebSocket幀的形式存在于網(wǎng)絡(luò)上,總共也就只會占約2B左右的開銷。隨著網(wǎng)絡(luò)訪問用戶量的增長,WebSocket網(wǎng)絡(luò)開銷的優(yōu)勢會越來越明顯12。如圖2-1所示:網(wǎng)絡(luò)開銷對比:圖2-1 Ajax輪詢與WebSocket網(wǎng)絡(luò)吞吐量對比場景一 Ajax輪詢:用例 A:1000 客戶,每秒輪詢一次,網(wǎng)絡(luò)流量為 8711000=871000B=6968000bit/s(6.6Mbit/s)用例 B:10000 客戶,每秒
33、輪詢一次,網(wǎng)絡(luò)流量為 87110000=8710 000B=69680 000bit/s(66Mbit/s)用例 C:100000 客戶,每秒輪詢一次,網(wǎng)絡(luò)流量為 871100000=87100000B=696800000bit/s(665Mbit/s)場景二 WebSocket:用例 A:1000 客戶,每秒接收一個消息,網(wǎng)絡(luò)流量為 21000=2000B=16000bit/s(0.015Mbit/s)用例 B:10000 客戶,每秒接收一個消息,網(wǎng)絡(luò)流量為 210000=20 000B=160 000bit/s(0.153Mbit/s)用例 C:100000 客戶,每秒接收一個消息,網(wǎng)絡(luò)流
34、量為 2100000=200000B=1600000bit/s(1.526Mbit/s)如圖2-2所示,在降低網(wǎng)絡(luò)流量方面HTML5的WebSocket的性能表現(xiàn)的非常出色。由于WebSocket只在同服務(wù)器建立握手連接的時候才發(fā)送一次請求,以后的所有消息傳遞都不需要再次發(fā)送請求,整個過程中服務(wù)器也就只處理一次請求。與處理輪詢技術(shù)的大批量請求相比而言,WebSocket服務(wù)器的壓力有了大幅度的降低13。時延對比:圖2-2 輪詢和WebSocket時延對比在圖2-2中的上部分內(nèi)容顯示的是半雙工輪詢技術(shù)的運行過程,對圖仔細分析就可得到如果消息的一次傳輸占用50ms的話,并且服務(wù)器端數(shù)據(jù)更新的比較頻
35、繁時,采用輪詢技術(shù)的數(shù)據(jù)推送方式會在這50ms內(nèi)產(chǎn)生多個延遲,另外如果數(shù)據(jù)本身占用內(nèi)存比較大時,服務(wù)器的內(nèi)存就會被迅速的耗盡,嚴(yán)重時會直接導(dǎo)致服務(wù)器奔潰。圖2-2的下部分顯示的是WebSocket技術(shù)的工作過程,由于WebSocket提供了全雙工的工作模式,服務(wù)器和瀏覽器之間的數(shù)據(jù)交互互不影響,消息的發(fā)送和所消耗時間也沒有任何關(guān)系,因此不管是任何一方的數(shù)據(jù)發(fā)送都不會產(chǎn)生延遲的現(xiàn)象,當(dāng)然服務(wù)也就不必為新接收的數(shù)據(jù)開辟額外的內(nèi)存 14。另外,值得一提的是WebSocket穿越代理和防火墻的能力。由于WebSocket是基于HTTP_CONNECT代理協(xié)議的,所以瀏覽器和服務(wù)器之間的交互在本質(zhì)上還是
36、然是一個HTTP請求,這個請求是一個經(jīng)過申請協(xié)議升級的HTTP請求,服務(wù)器就是根據(jù)這個請求與瀏覽器建立連接的,由于HTTP協(xié)議是不受防火墻限制的,所以基于WebSocket的應(yīng)用,自然也就具有超強的環(huán)境適應(yīng)能力。最后,WebSocket開發(fā)簡單方便。WebSocket提供的編程接口避免了開發(fā)人員與復(fù)雜的協(xié)議打交道,所以不了解通信協(xié)議的開發(fā)者,仍然可以開發(fā)出基于WebSocket的應(yīng)用。2.4.3 WebSocket 握手協(xié)議前面已說明了WebSocket 協(xié)議是一個基于 TCP 的協(xié)議。它在HTTP的請求報頭中添加了“Upgrade:WebSocket”的說明字段,服務(wù)器就是根據(jù)這條字段產(chǎn)生應(yīng)
37、答和客戶端建立WebSocket連接的,WebSocket連接是持久的它不像TCP連接有超時的限制15,WebSocket連接只有在客戶端或服務(wù)器端中的任何一方主動發(fā)出關(guān)閉連接信息后才會中斷。由于WebSocket到目前為止還沒有以標(biāo)準(zhǔn)的形式推廣,它的細節(jié)部分還處于不斷完善階段,所以不同時期可能有不同的WebSocket規(guī)范。本文介紹的是draft-hixie-thewebsocketprotocol-76版的 WebSocket 協(xié)議,該版本的WebSocket可在Open、Chrome和FireFox瀏覽器上執(zhí)行??蛻舳苏埱蠓?wù)端: GET /demo HTTP/1.1 Host: Con
38、nection: Upgrade Sec-WebSocket-Key2: 12998 5 Y3 1 .P00 Upgrade: WebSocket Sec-WebSocket-Key1: 41 46546xW%0l 1 5 Origin: http:/網(wǎng)址 8-byte security key 服務(wù)端對客戶端的響應(yīng):HTTP/1.1 101 WebSocket Protocol Handshake Upgrade: WebSocket Connection: Upgrade WebSocket-Origin: http:/網(wǎng)址 WebSocket-Location: ws:/網(wǎng)址 16-by
39、te hash response協(xié)議中的Sec-WebSocket-Key1,Sec-WebSocket-Key2 ,8-byte security key 字段就是服務(wù)器端需解析的關(guān)鍵信息,據(jù)此來產(chǎn)生應(yīng)答信息給瀏覽器端。draft-hixie-thewebsocketprotocol-76草案是這樣定義應(yīng)答信息的:1. 讀取Sec-WebSocket-Key1頭信息對應(yīng)的值,將讀取到的數(shù)值以字符串的格式存儲起來, 并計算出所有空格的個數(shù);2. 將第1步得到的數(shù)字字符串轉(zhuǎn)換成一個整型值,然后除以第1步里統(tǒng)計出來的空格個數(shù),然后將得到的浮點數(shù)轉(zhuǎn)換成整數(shù)型;3. 將第2步里得出的整型值轉(zhuǎn)換為網(wǎng)絡(luò)字
40、節(jié)序;4. 對Sec-WebSocket-Key2頭信息采取同Sec-WebSocket-Key1的操作,得出第二個網(wǎng)絡(luò)字節(jié)型數(shù)組;5. 將8-byte security key和在第3,第 4 步里生成的網(wǎng)絡(luò)字節(jié)數(shù)組連接成一個16B的數(shù)組;6. 對第5步生成的字節(jié)數(shù)組按MD5算法生成一個哈希值作為安全密鑰返回給客戶端,之后WebSocket連接就建立起來了。2.4.4 WebSocket 接口WebSocket接口是HTML5針對開發(fā)Web應(yīng)用程序向程序員提供的編程接口,WebSocket的JavaScript 接口定義如下: Constructor(in DOMString url, in
41、 optional DOMString protocol) interface WebSocket readonly attribute DOMString URL; / 就緒狀態(tài) const unsigned short Connecting = 0; const unsigned short Open = 1; const unsigned short Close = 2; readonly attribute unsigned short readyState; readonly attribute unsigned long bufferedAmount; / 網(wǎng)絡(luò) attribute
42、 Function onopen; attribute Function onmessage; attribute Function onclose; boolean Send(in DOMString data); void Close(); ; WebSocket implements EventTarget;接口中URL用于表示W(wǎng)ebSocket服務(wù)器的網(wǎng)絡(luò)地址,協(xié)議使用“ws”表示,也有用“wss”表示的安全的WebSocket 連接。接口規(guī)定了使用send方法發(fā)送數(shù)據(jù),使用close 方法關(guān)閉連接。除了這兩個方法外,接口中還定義了四個重要的事件:Onopen,Onmessage,On
43、error和Onclose方法。圖2-3列出的就是接口定義了的方法:圖2-3 WebSocket事件WebSocket建立連接的代碼如下:var wsServer = ws:/localhost:8080/Demo; var websocket = new WebSocket(wsServer); websocket.onopen = function (event) onOpen(event) ; websocket.onclose = function (event) onClose(event) ; websocket.onmessage = function (event) onMes
44、sage(event) ; websocket.onerror = function (event) onError(event) ; function onOpen(event) console.log(Connected to WebSocket server successfully!); function onClose(event) console.log(Connection is closed!); function onMessage(event) console.log(The data from server is: + evt.data); function onErro
45、r(event) console.log(Error: + event.data); 在WebSocket連接建立的過程是將HTTP協(xié)議升級到WebSocket協(xié)議,連接建立完成之后,無論是客戶端還是服務(wù)器端都可以直接調(diào)用WebSocket接口提供的方法在全雙工的模式下發(fā)送和偵聽數(shù)據(jù)16。2.4.5 瀏覽器和服務(wù)器支持情況表2-1列出的是目前支持HTML5 WebSocket的瀏覽器:瀏覽器支持要求Internet Explorerversion 10+Chromeversion 4+Firefoxversion 4+Operaversion 10+Safariversion 5+表2-1瀏覽
46、器對WebSocket的支持在服務(wù)器端實現(xiàn)了WebSocket協(xié)議的項目有:jetty 7.0.1、pyWebSocket(apache http server)、Nginx 1.3.13、jWebSocket(java WebSocket)、resin、Apache tomcat 7.0.27。2.4.6 WebSocket的局限性WebSocket的優(yōu)點主要表現(xiàn)在基于全雙工通信的低網(wǎng)絡(luò)吞吐量和零數(shù)據(jù)延時方面,但是WebSocket的缺點同樣也很明顯。首先它還是一項正在進行的中草案,尤其是沒有標(biāo)準(zhǔn)的API,所以這也就決定了它至少是在目前還不能在所有的Web服務(wù)器上運行WebSocket程序,
47、開發(fā)的WebSocket服務(wù)器可能會被鎖定在一個平臺上。其次由于WebSocket尚未形成標(biāo)準(zhǔn),所以各瀏覽器對它的支持情況也是不盡相同的。2.5 本章小結(jié)本章首先簡要介紹了物聯(lián)網(wǎng)技術(shù)的概念,并對其主要特征和關(guān)鍵技術(shù)做了歸納。接著介紹了Nodejs 服務(wù)器的新特性和Nodejs開發(fā)實時 Web 應(yīng)用服務(wù)器的優(yōu)勢,強調(diào)了該技術(shù)在網(wǎng)絡(luò)密集型方面的應(yīng)用,和其在實時性要求高的web開發(fā)中的重要性。最后是對HTML5的WebSocket規(guī)范和WebSocket接口的介紹,重點將其和傳統(tǒng)的實時技術(shù)作了對比分析得出其在性能上的優(yōu)勢,在末尾還對WebSocket的瀏覽器和服務(wù)器端運行的條件進行了說明。第三章 系
48、統(tǒng)分析與設(shè)計3.1心率檢測系統(tǒng)分析隨著物聯(lián)網(wǎng)技術(shù)的發(fā)展與廣泛的應(yīng)用,基于物聯(lián)網(wǎng)架構(gòu)的智能技術(shù)產(chǎn)品越來越多,如利用物聯(lián)網(wǎng)中的感知技術(shù),將傳感器設(shè)備用在心率監(jiān)控中,通過感知病人的心跳次數(shù)自動發(fā)送心率數(shù)據(jù)給遠程的醫(yī)護人員,避免了專門派遣醫(yī)護人員進行檢測的情況。利用物聯(lián)網(wǎng)實現(xiàn)醫(yī)院病人心率信息的統(tǒng)一管理,通過網(wǎng)絡(luò)將心率信息匯總,以實時方式監(jiān)控病人的心率情況,從而有效防止病人突發(fā)情況的發(fā)生。由于病情監(jiān)控是一件刻不容緩的事,所以醫(yī)院對心率監(jiān)控系統(tǒng)數(shù)據(jù)傳輸?shù)膶崟r性和操作的簡易性的要求就會非常高。本文論述的心率監(jiān)控系統(tǒng)是在物聯(lián)網(wǎng)通信技術(shù)的基礎(chǔ)上,將傳感器網(wǎng)絡(luò)、以及 HTML5的WebSocket技術(shù)相結(jié)合,在B
49、/S模式下設(shè)計了一個具有實時性高、通用性好、操作簡便的實時遠程在線心率監(jiān)控系統(tǒng)。本系統(tǒng)不僅適用于在醫(yī)院內(nèi)使用,也可擴展到其他類似需要實現(xiàn)監(jiān)控的領(lǐng)域內(nèi)使用。用戶通過瀏覽器監(jiān)測和管理病人的心率信息,這樣即使醫(yī)院沒有陪護人員,用戶只要打開瀏覽器即可隨時查看病人的心率數(shù)據(jù)。特別是在深夜當(dāng)工作人員都下班回家后,沒有護理人員監(jiān)護病人病情時,應(yīng)用本系統(tǒng)便可完成實時檢測,減少了不必要的人力投入。通過瀏覽器管理病人,監(jiān)護人員就可以坐在辦公室在瀏覽器上控制病人,這樣不僅可以在第一時間內(nèi)發(fā)現(xiàn)異常情況,而且可以避免人工監(jiān)護時疏忽情況的發(fā)生,同時能夠有效地節(jié)約人力物力,大大提升醫(yī)院的運作效率。另外,通過實時遠程在線監(jiān)測
50、可以方便醫(yī)生了解和掌握病人心率的狀態(tài)變化,用于對患者健康的分析和判斷,另外系統(tǒng)可在第一時間發(fā)現(xiàn)異常情況同時發(fā)出警報,使醫(yī)生迅速趕到對應(yīng)病房實施搶救。3.2 系統(tǒng)需求分析為了幫助醫(yī)院管理人員對病人的心率信息進行管理,根據(jù)醫(yī)院心率檢測過程的應(yīng)用研究分析,心率檢測系統(tǒng)要實現(xiàn)以下五個目標(biāo):(一) 用戶在系統(tǒng)前臺可以查看患者的實時心率數(shù)據(jù);(二) 患者的心率數(shù)據(jù)在客戶端以動態(tài)圖形的方式展示;(三) 當(dāng)患者心率異常時,系統(tǒng)能夠產(chǎn)生報警信號;(四) 系統(tǒng)實時響應(yīng)速度要快,避免發(fā)生延遲;(五) 系統(tǒng)需要滿足可及時維護和更新的需求,而且要具有穩(wěn)定性高、擴展性強的優(yōu)點。經(jīng)過對上述五條需求進行分析,心率檢測系統(tǒng)主要
51、完成的功能是:實時數(shù)據(jù)顯示和報警功能。用戶進入系統(tǒng)主頁后就可以直接查看檢測到的心率數(shù)據(jù),當(dāng)系統(tǒng)發(fā)現(xiàn)心率數(shù)據(jù)異常時系統(tǒng)會自動啟動報警。3.3 系統(tǒng)架構(gòu)心率檢測系統(tǒng)由三部分組成,分別是:數(shù)據(jù)采集部分、服務(wù)器端和終端。系統(tǒng)結(jié)構(gòu)如圖3-1所示:圖3-1 系統(tǒng)架構(gòu)圖系統(tǒng)運行時,首先將后臺心率檢測傳感器采集到的心率數(shù)據(jù)通過網(wǎng)絡(luò)傳輸?shù)椒?wù)器上。Web服務(wù)器接收到心率信息后,隨即利用 HTML5 中的 WebSocket 技術(shù),將數(shù)據(jù)通過服務(wù)器和瀏覽器之間的全雙工信道實時地推送到客戶端瀏覽器,醫(yī)生通過瀏覽器就可以實時查看到病人的心率數(shù)據(jù)。3.4 服務(wù)器推送技術(shù)可行性分析HTML5 WebSocket的出現(xiàn)為C
52、/S應(yīng)用遷移到B/S模式下提供了技術(shù)基礎(chǔ),由于B/S模式具有客戶端精簡、易于升級維護和通用性好的優(yōu)點,所以B/S取代C/S逐漸成為了一種趨勢。B/S應(yīng)用的關(guān)鍵問題是Web通信的問題,在WebSocket出現(xiàn)之前,解決客戶端和服務(wù)器端數(shù)據(jù)通信的方法主要有輪詢、長輪詢和流等技術(shù),這些技術(shù)雖然都能夠完成客戶端和服務(wù)器之間的數(shù)據(jù)交互,但是在數(shù)據(jù)的實時性方面都不能滿足要求。首先輪詢、長輪詢和流都是基于TCP的單鏈接,輪詢是靠客戶端不斷的以固定時間間隔詢問服務(wù)器是否有新數(shù)據(jù)到來,由于新數(shù)據(jù)的產(chǎn)生具有隨機性,所以輪詢技術(shù)的每一次請求可能都是無用的,而且毫無目的的請求也會造成大量的資源浪費,同時會造成服務(wù)器負
53、載過重的現(xiàn)象。長輪詢雖然將連接保持一段時間不關(guān)閉,減少了請求次數(shù),但是如果服務(wù)器端的數(shù)據(jù)更新很快時,長輪詢就會退化為輪詢,固長輪詢也不能解決數(shù)據(jù)的實時推送。流技術(shù)在實現(xiàn)時在頁面中插入了一個隱藏的iframe, 通過iframe在瀏覽器和服務(wù)器之間創(chuàng)建一個永久性的連接,服務(wù)器端的數(shù)據(jù)雖然可以及時的發(fā)送出去,但是由于流在穿越防火墻和代理服務(wù)器時會被緩沖并造成一定的延時,所以流也不是解決實時性應(yīng)用的可行技術(shù)17。由上述分析可知要保證Web數(shù)據(jù)傳輸?shù)膶崟r性,如果能在客戶端和服務(wù)器之間建立一條全雙工的通道就可解決輪詢、長輪詢和流技術(shù)不能解決的實時性問題。WebSocket 技術(shù)剛好提供了一條滿足實時數(shù)據(jù)
54、傳輸?shù)娜p工通信信道,此外WebSocket在網(wǎng)絡(luò)吞吐量和數(shù)據(jù)延時方面也具有強大的優(yōu)勢,首先HTTP 協(xié)議的請求和響應(yīng)報頭信息中都包含了560個字節(jié),而 WebSocket 協(xié)議的每個消息都是用一個幀表示的,頭信息只有 2 個字節(jié)。有實驗得出,當(dāng)用戶數(shù)量激增時WebSocket 產(chǎn)生的網(wǎng)絡(luò)吞吐量和輪詢相比是微乎其微的。其次數(shù)據(jù)從服務(wù)器到瀏覽器的傳輸大約需要用50毫秒,第二章已說明在使用輪詢技術(shù)時,一次響應(yīng)完成后,客戶端需要再次向服務(wù)器發(fā)送新的請求,這個請求同樣也需要50毫秒,但是在請求發(fā)送的期間服務(wù)器無法發(fā)送任何消息給瀏覽器,這樣一來服務(wù)器就必須為新數(shù)據(jù)分配臨時空間,長期累積下來,服務(wù)器的內(nèi)存
55、消耗就會非常嚴(yán)重,數(shù)據(jù)的延時也會不斷的增加;若采用HTML5的WebSocket 技術(shù),連接就會從HTTP升級到 WebSocket,雖然數(shù)據(jù)從服務(wù)器傳輸?shù)綖g覽器仍然還需要50毫秒,但是WebSocket提供的全雙工信道可保證之后瀏覽器不用再向服務(wù)器發(fā)送任何請求,而且雙方相互發(fā)送數(shù)據(jù)時互不妨礙對方,服務(wù)器也就不會有內(nèi)存消耗,數(shù)據(jù)的延時更不會增加18。經(jīng)上述對比分析可知,為了能夠?qū)崿F(xiàn)系統(tǒng)對數(shù)據(jù)傳輸?shù)膶崟r性要求,HTML5的WebSocket是實現(xiàn)本系統(tǒng)服務(wù)器推送技術(shù)的最佳選擇。3.5 服務(wù)器端設(shè)計本系統(tǒng)的Web服務(wù)器程序是在 Windows平臺下利用 Nodejs 編程實現(xiàn)的。使用Nodejs 編寫服務(wù)器的優(yōu)點在于它基于谷歌瀏覽器的V8 引擎、具有事件驅(qū)動的I
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度房屋退租及裝修補償協(xié)議
- 2025年度綠化養(yǎng)護與景觀照明系統(tǒng)合作合同
- 二零二五年度加油站員工勞動合同與員工加班時間安排協(xié)議
- 二零二五年度圖書教育電商平臺商家入駐合作協(xié)議
- 2025年度豬肉養(yǎng)殖基地建設(shè)與運營管理合同
- 社區(qū)廣告位廣告設(shè)計制作與安裝合同(二零二五)
- 二零二五年度生鮮電商物流配送體系合作合同
- 2025年度終止勞動合同協(xié)議書:KK企業(yè)員工LL合同終止及離職手續(xù)辦理協(xié)議
- 2025年度父母子女財產(chǎn)分割與子女婚嫁籌備資助協(xié)議
- 二零二五年度股份有限公司個人自愿退股合同
- 2025-2030年中國羽毛球行業(yè)規(guī)模分析及投資前景研究報告
- 凝血七項的臨床意義
- 中國歷史七年級下1單元復(fù)習(xí)教案資料
- 數(shù)據(jù)庫系統(tǒng)管理與應(yīng)用 課件 知識點2.1 使用達夢數(shù)據(jù)庫
- 第二章 幼兒園的設(shè)置與規(guī)劃
- 小學(xué)信息技術(shù)五年級下冊《第2課 平面草圖手巧繪》說課稿
- 銀行業(yè)務(wù)技能比賽方案范文(2篇)
- 人教版九年級歷史復(fù)習(xí) 專題04 資本主義制度的初步確立(考點串講)
- 初級建(構(gòu))筑物消防員理論考試真題與答案
- 特種設(shè)備安全日管控-周排查-月調(diào)度制度-
- 司馬遷與《史記·管晏列傳》
評論
0/150
提交評論