999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Express的違章查詢REST Web Service設(shè)計與實現(xiàn)

2017-06-20 09:08:25戴鵬程聶云峰王興徐飛飛李杰
軟件導(dǎo)刊 2017年4期
關(guān)鍵詞:用戶服務(wù)信息

戴鵬程+聶云峰+王興+徐飛飛+李杰

摘要:違章查詢是交通管理部門提供的一項便民服務(wù),方便駕駛?cè)藢`章信息進(jìn)行在線查詢及處理。移動互聯(lián)網(wǎng)發(fā)展快速、移動設(shè)備種類繁多且設(shè)備資源有限,為解決移動互聯(lián)網(wǎng)背景下異構(gòu)客戶端的違章查詢服務(wù)接入和高并發(fā)服務(wù)性能問題,提出一種基于Express的違章查詢REST Web Service解決方案,為交通管理部門和用戶提供便捷高效的違章查詢服務(wù)。通過Apache JMeter進(jìn)行壓力測試,實驗結(jié)果表明,該方法實現(xiàn)簡單,有效地提高了違章查詢服務(wù)的擴(kuò)展性和系統(tǒng)性能。

關(guān)鍵詞:違章查詢;Node.js;Express;REST;移動互聯(lián)網(wǎng)DOI:10.11907/rjdk.162652中圖分類號:TP319文獻(xiàn)標(biāo)識碼: A 文章編號: 16727800(2017)004006703

0引言 隨著國家經(jīng)濟(jì)的快速發(fā)展,汽車已經(jīng)完全融入普通大眾的生活。據(jù)相關(guān)部門統(tǒng)計,2015年全國機(jī)動車保有量達(dá)到2.79億輛[1],隨著機(jī)動車保有量的大幅增加,機(jī)動車違章現(xiàn)象也與日俱增,為讓車主隨時隨地通過各種移動終端快捷查詢違章信息,交通管理部門迫切需要開發(fā)及部署一種能夠滿足高并發(fā)及高可用性的違章查詢服務(wù)。傳統(tǒng)部署在Tomcat等應(yīng)用容器上的違章查詢應(yīng)用在處理多用戶并發(fā)請求時需要不斷開啟新的線程服務(wù)用戶請求以及頻繁的線程切換開銷,大大降低了CPU及內(nèi)存的利用率,因此在處理高并發(fā)及I/O密集型業(yè)務(wù)時存在先天的性能瓶頸[2]?;谑录?qū)動和非阻塞I/O的應(yīng)用容器,如Node.js等為解決高并發(fā)應(yīng)用場景提供了優(yōu)秀的解決方案。Node.j使用事件驅(qū)動及非阻塞I/O模型而得以輕量和高效,非常適合開發(fā)及部署高并發(fā)I/O密集型的實時應(yīng)用[45]。本文在分析相關(guān)技術(shù)和需求的基礎(chǔ)上,基于Node.js平臺下的Express框架,設(shè)計并實現(xiàn)了一種基于Express的違章查詢REST Web Service。

1Express簡介 Express是一種精簡靈活、使用廣泛的Node.js Web應(yīng)用框架,為開發(fā)者快速創(chuàng)建簡潔、高效的Web應(yīng)用提供了便利[67]。Express在Node.js基礎(chǔ)上對Web應(yīng)用通用功能進(jìn)行了模塊化封裝,Express的核心特性為:通過中間件來響應(yīng)HTTP請求;定義路由表匹配不同的HTTP請求;通過Jade或Ejs等模板傳遞參數(shù)來動態(tài)渲染HTML頁面。Express的API非常精簡,主要包括Application、Request、Response、Router 4個對象,分別表示應(yīng)用程序、請求對象、響應(yīng)對象、路由器對象,上述4個對象構(gòu)成了Express應(yīng)用的基石。Express具備Node.js事件驅(qū)動、異步編程及非阻塞IO處理等特點(diǎn)?;贜ode.js開發(fā)的系統(tǒng)具有高性能和強(qiáng)大的負(fù)載能力,非常適合流量高,但后臺邏輯并不復(fù)雜的服務(wù)端應(yīng)用,目前國內(nèi)典型的基于Node.js開發(fā)的大型應(yīng)用包括淘寶數(shù)據(jù)平臺、網(wǎng)易開源Pomelo游戲引擎框架及百度云數(shù)據(jù)存儲模塊等[89]。 REST(Representational State Transfer)表示“表現(xiàn)狀態(tài)轉(zhuǎn)換”,又稱RESTful,是由Roy Fielding博士[10]在其論文中提出的一種分布式系統(tǒng)架構(gòu)風(fēng)格。REST包含3個主要內(nèi)容,即資源(Resource)、表示(Representation)、狀態(tài)(State)。Resource指網(wǎng)絡(luò)上一種體現(xiàn)為比特流的實物或抽象概念,可通過統(tǒng)一資源定位符URI定位;Representation指資源所呈現(xiàn)出的某種形式,為構(gòu)建可擴(kuò)展、松耦合的Web應(yīng)用提供準(zhǔn)則;State既可以是服務(wù)器端資源狀態(tài)又可以是終端應(yīng)用狀態(tài),資源的狀態(tài)保存在服務(wù)端,應(yīng)用狀態(tài)由應(yīng)用自身維護(hù),由于REST所有交互都是無狀態(tài)的,因此終端的每次請求需攜帶交互所需的全部信息。REST將整個服務(wù)端抽象成資源的集合,資源由URI標(biāo)識,終端通過HTTP標(biāo)準(zhǔn)方法對資源進(jìn)行請求和響應(yīng),其中HTTP主要方法包括POST、DELETE、PUT及GET,分別對應(yīng)資源的增刪改查等操作?;赗EST實施的上述架構(gòu)約束,開發(fā)者可輕松解決系統(tǒng)開發(fā)中接口可擴(kuò)展性和終端異構(gòu)性等問題[11]。 根據(jù)違章查詢服務(wù)需求分析,違章查詢系統(tǒng)主要包括3個模塊:用戶管理模塊、車輛管理模塊、違章查詢模塊。用戶管理模塊主要功能包括:用戶登錄、用戶注冊、添加及修改用戶基本信息、綁定用戶手機(jī)號碼、綁定用戶駕駛證信息。車輛管理模塊主要對用戶車輛進(jìn)行管理,如錄入車輛基本信息、綁定用戶車輛,用戶在查詢違章信息前需判斷車輛與用戶是否綁定,如果未綁定將禁止查詢,并提醒用戶綁定車輛信息,用戶也可對車輛信息進(jìn)行修改刪除。違章查詢模塊主要為用戶提供車輛違章信息查詢服務(wù),用戶通過終端發(fā)送違章查詢請求,后臺根據(jù)查詢條件返回JSON格式的違章描述信息,包括違章時間、違章地點(diǎn)、違章代碼、扣除分?jǐn)?shù)及罰款金額等詳細(xì)信息。此外,當(dāng)用戶存在待罰款違章信息時,用戶可通過在線繳費(fèi)的方式處理違章記錄。結(jié)合上述違章查詢服務(wù)需求分析,遵循REST規(guī)范,設(shè)計出符合REST風(fēng)格的違章查詢系統(tǒng)接口如表1-表3所示。

3系統(tǒng)實現(xiàn)與性能測試 基于Express及REST規(guī)范設(shè)計并實現(xiàn)了違章查詢服務(wù),將系統(tǒng)后端部署在阿里云ECS服務(wù)器,并開發(fā)了手機(jī)APP方便用戶進(jìn)行違章查詢。系統(tǒng)開發(fā)環(huán)境:Node 4.4.5、Express 4.0、Mongodb 3.2.6;系統(tǒng)開發(fā)工具:WebStrom11、Rebomongo 0.9.0;部署環(huán)境:阿里云Windows Server 2008 R2企業(yè)版,2核CPU,4G內(nèi)存,4M帶寬。當(dāng)用戶是會員時,直接點(diǎn)擊“我是會員”進(jìn)行違章查詢,服務(wù)響應(yīng)結(jié)果包括違法時間、違法地點(diǎn)、罰款金額、違法記分?jǐn)?shù)等違章信息列表,當(dāng)用戶點(diǎn)擊某一違章條目即可查看該條違章對應(yīng)的詳細(xì)信息。為測試上述基于Express的違章查詢REST Web Service性能,本文與傳統(tǒng)J2EE實現(xiàn)進(jìn)行了性能對比實驗。實驗硬件環(huán)境為:WIN7系統(tǒng)PC機(jī),i54590 3.30GHz CPU,16G內(nèi)存;實驗軟件環(huán)境為:Mongodb 3.2.6數(shù)據(jù)庫;Rebomongo 0.9.0可視化數(shù)據(jù)庫工具;壓力測試工具為Apache JMeter。利用Apache JMeter模擬發(fā)送HTTP請求,記錄并發(fā)請求數(shù)分別在100,200...2000時的系統(tǒng)平均響應(yīng)時間[12],實驗結(jié)果如圖1所示。

圖1表明,在并發(fā)量小于600時,傳統(tǒng)J2EE實現(xiàn)和〖CM)〗〖LL〗〖HJ*5/9〗Express服務(wù)的平均響應(yīng)時間差別不大,基于Express違章查詢服務(wù)比J2EE服務(wù)快5%左右;當(dāng)并發(fā)量在600~1 200時,J2EE服務(wù)的平均響應(yīng)時間隨著并發(fā)數(shù)增加而快速上升,Express服務(wù)響應(yīng)時間仍維持在較為平穩(wěn)狀態(tài),Express服務(wù)比J2EE服務(wù)快近20%左右;當(dāng)并發(fā)量大于1 200時,J2EE服務(wù)響應(yīng)時間急劇增加,由于Tomcat線程池線程數(shù)量爆滿可能出現(xiàn)系統(tǒng)崩潰情況,而Express服務(wù)平均響應(yīng)時間增加較為平緩,仍能正常服務(wù)客戶端請求。

4結(jié)語 針對異構(gòu)客戶端的違章查詢服務(wù)接入問題和高并發(fā)服務(wù)性能問題,提出一種基于Express的違章查詢 REST Web Service方案,結(jié)合REST系統(tǒng)架構(gòu)風(fēng)格的特點(diǎn)和違章查詢的實際需求,基于Express等相關(guān)技術(shù)原理,設(shè)計并實現(xiàn)了基于Express REST違章查詢服務(wù),最后實現(xiàn)了基于Express服務(wù)與基于J2EE服務(wù)性能對比實驗。實驗結(jié)果表明,Express服務(wù)在處理高并發(fā)問題時系統(tǒng)性能明顯優(yōu)于傳統(tǒng)J2EE服務(wù),能有效提高違章查詢服務(wù)性能。參考文獻(xiàn):[1]沈后功,周凱.2015年全國機(jī)動車和駕駛?cè)搜该驮鲩L新增汽車1781多萬汽車保有量增長創(chuàng)歷史新高[J].汽車與安全,2016(2):4141.

[2]劉尚旺,何東健,閆艷.Tomcat與IIS或Apache服務(wù)器集成的應(yīng)用研究[J].計算機(jī)工程與設(shè)計,2009,30(10):25412543.

[3]劉家紅,吳泉源.一個基于事件驅(qū)動的面向服務(wù)計算平臺[J].計算機(jī)學(xué)報,2008,31(4):588599.

[4]許會元,何利力.NodeJS的異步非阻塞I/O研究[C].全國工業(yè)控制計算機(jī)技術(shù)年會,2014.

[5][美]ETHAN BROWN.Node與Express開發(fā)[M].北京:人民郵電出版社,2015:3144

[6]ARCHER R.ExpressJS:web app development with node.js framework[M].CreateSpace Independent Publishing Platform,2015:1425

[7]TILKOV S,VINOSKI S.Node.js: using javascript to build highperformance network programs[J].IEEE Internet Computing,2010,14(6):8083.

[8]楊爭輝,葉樺.基于Node.js的家庭智能地暖遠(yuǎn)程監(jiān)控系統(tǒng)[J].Computer Science\\s&\\sapplication,2015,5(6):204211.

[9]陸凌牛.Node.js權(quán)威指南[M].北京:機(jī)械工業(yè)出版社,2014:3145.

[10]程冬梅,王瑞聰,劉燕,等.基于REST架構(gòu)風(fēng)格的物聯(lián)網(wǎng)服務(wù)平臺研發(fā)[J].計算機(jī)工程與應(yīng)用,2012,48(14):7478.[11]左文娟,張秋菊.基于REST物聯(lián)網(wǎng)監(jiān)控系統(tǒng)設(shè)計[J].計算機(jī)工程與設(shè)計,2016,37(1):2125.

[12]葉青平,王鵬飛,曹華.Web應(yīng)用系統(tǒng)的分布式負(fù)載測試框架研究[J].計算機(jī)工程與科學(xué),2009,31(5):134(責(zé)任編輯:孫娟)

Abstract:Traffic peccancy query service is one of convenient service provided by Traffic Management Department,which is convenient for drivers to query and handle peccancy information online.Due to the rapid development of mobile internet,the wide range of mobile devices and the limited of equipment resources,How to allow all kinds of client access traffic peccancy query service and improve the performance of high concurrent service under the background of mobile internet has become a complicated problem,In order to solve this problem.A traffic peccancy query solution based on Express REST Web Service is proposed,it provide convenient and efficient traffic peccancy query services for Traffic Management Departmnet and drivers.Using Apache JMeter for stress test,The experimental results show that this method is simple and easy to implement,and effectively improve the scalability and performance of the traffic peccancy query service.

Key Words:Traffic Peccancy Query;Node.js;Express;Rest;High Concurrency

猜你喜歡
用戶服務(wù)信息
服務(wù)在身邊 健康每一天
服務(wù)在身邊 健康每一天
服務(wù)在身邊 健康每一天
招行30年:從“滿意服務(wù)”到“感動服務(wù)”
商周刊(2017年9期)2017-08-22 02:57:56
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
關(guān)注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關(guān)注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關(guān)注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
如何獲取一億海外用戶
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
主站蜘蛛池模板: 国产亚洲视频播放9000| 在线看免费无码av天堂的| www.亚洲天堂| 奇米精品一区二区三区在线观看| 欧美特级AAAAAA视频免费观看| 狠狠色丁香婷婷综合| 女同久久精品国产99国| 国产黄在线观看| 亚洲天堂.com| 亚洲男人的天堂在线| 色爽网免费视频| 福利视频99| 性激烈欧美三级在线播放| 国产精品专区第1页| 精品视频一区二区观看| 亚洲色图在线观看| 永久免费精品视频| 色精品视频| 国产精品无码AV片在线观看播放| 草草线在成年免费视频2| 草草影院国产第一页| 免费久久一级欧美特大黄| 最新国产午夜精品视频成人| 久久久久青草线综合超碰| 免费A级毛片无码免费视频| 情侣午夜国产在线一区无码| 国产精品亚洲一区二区在线观看| 亚洲无码免费黄色网址| 亚洲无码在线午夜电影| 免费在线色| 中文字幕在线一区二区在线| 久久96热在精品国产高清| 成人国产精品视频频| 久久香蕉国产线| 福利视频一区| 日本高清免费一本在线观看| 无码人中文字幕| 熟妇无码人妻| 91精品专区国产盗摄| 午夜在线不卡| 久久久精品无码一二三区| 久久精品国产电影| 免费jjzz在在线播放国产| 波多野结衣一区二区三区四区视频 | 亚洲av色吊丝无码| 红杏AV在线无码| 日韩在线中文| 欧美97欧美综合色伦图| 亚洲综合激情另类专区| 国产又爽又黄无遮挡免费观看 | 日本欧美一二三区色视频| a级毛片免费看| 国产视频自拍一区| 激情爆乳一区二区| 欧美日韩免费| 国产在线拍偷自揄拍精品| 久久久久久久97| 国产高清国内精品福利| 国产美女免费| 亚洲天堂久久新| 国产精品成人啪精品视频| 国产性生大片免费观看性欧美| 亚洲一区国色天香| 97se亚洲综合不卡| 91网址在线播放| 国产精品妖精视频| 她的性爱视频| 欧美亚洲国产一区| 真实国产精品vr专区| 欧美亚洲一区二区三区导航 | 一本大道香蕉中文日本不卡高清二区| 999精品免费视频| 亚洲欧美日韩中文字幕一区二区三区 | 免费又爽又刺激高潮网址 | 欧美一级一级做性视频| 午夜精品久久久久久久2023| 99热这里只有精品2| 美女亚洲一区| 国产午夜福利在线小视频| 国产三级毛片| 国产真实乱了在线播放| 久久人与动人物A级毛片|