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

基于Web Service嵌入式數(shù)據(jù)庫同步更新解決方案

2020-08-26 07:46:55王國飛李質(zhì)建
電腦知識與技術(shù) 2020年20期

王國飛 李質(zhì)建

摘要:目前嵌入式數(shù)據(jù)庫已在移動終端平臺得到廣泛使用,但是不同廠商的數(shù)據(jù)庫產(chǎn)品之問還存在不兼容性問題,特別是在嵌入式數(shù)據(jù)庫與服務(wù)器數(shù)據(jù)源同步更新的問題上顯得尤為突出。考慮到商業(yè)產(chǎn)品的價格以及兼容性問題,本文提出了一種基于Web Service的嵌入式數(shù)據(jù)庫同步更新解決方案,并采用序列化、壓縮和附件技術(shù)等機(jī)制在性能上進(jìn)行優(yōu)化,以滿足實際商業(yè)或科研應(yīng)用的需要,是一種比較好的可行的解決方案,對系統(tǒng)項目建設(shè)具有示范和借鑒意義。

關(guān)鍵詞:嵌入式數(shù)據(jù)庫;Web Service;同步更新;序列化;壓縮;附件技術(shù)

中圖分類號:rrP393 文獻(xiàn)標(biāo)識碼:A

文章編號:1009-3044(2020)20-0051-02

1國內(nèi)外的移動應(yīng)用軟件的發(fā)展

隨著移動應(yīng)用開發(fā)技術(shù)的發(fā)展和智能移動終端的普及,移動應(yīng)用軟件這個前景寬廣的領(lǐng)域已經(jīng)受到越來越多軟件廠商的關(guān)注。如何通過一種機(jī)制來訪問多種數(shù)據(jù)庫實現(xiàn)同步更新,并兼容跨平臺之間的互操性,Web Service技術(shù)很好地解決了這個問題,在當(dāng)前的桌面分布式數(shù)據(jù)庫中Web Service已經(jīng)得到廣泛的應(yīng)用。本文主要探討通過Web Service實現(xiàn)嵌入式數(shù)據(jù)庫與服務(wù)器數(shù)據(jù)源的同步更新,并以微軟的.NET平臺實現(xiàn)SOL Server CE與Oracle同步更新為例,得到一種基于Web Ser-vlce的嵌入式數(shù)據(jù)庫同步更新的解決方案,并采用序列化、壓縮和附件技術(shù)等機(jī)制在性能上進(jìn)行優(yōu)化,最后得到優(yōu)化的解決方案。

2基于Web Service的嵌入式數(shù)據(jù)庫同步更新解決方案實現(xiàn)

現(xiàn)在主流的開發(fā)平臺上都可以開發(fā)基于Web Service的應(yīng)用,如Eclipse,Visual Studio等,而且都對Web Service的發(fā)布,查找和生成本地代理等過程進(jìn)行了簡化操作,使得開發(fā)人員能更容易的開發(fā)基于Web Service的應(yīng)用。Web Service一旦部署就可以在項目中調(diào)用,主要分為靜態(tài)調(diào)用和動態(tài)調(diào)用。兩種方法沒用本質(zhì)的區(qū)別,靜態(tài)調(diào)用是只能固定調(diào)用某個Web Service(URL固定),而動態(tài)調(diào)用可以通過配置以達(dá)到按跨平臺調(diào)用的目的。

2.1嵌入式數(shù)據(jù)庫同步更新的解決方案系統(tǒng)架構(gòu)及實現(xiàn)

Web Service是完全基于XML/XSD的標(biāo)準(zhǔn)的新平臺,是個獨(dú)立的系統(tǒng)軟件,它可以進(jìn)行跨網(wǎng)絡(luò)的計算機(jī)操作,同時作為一種分布式的計算技術(shù),實現(xiàn)了異構(gòu)系統(tǒng)相互的通信與共享操作。所以在系統(tǒng)集成方案中通常將Web Service作為中間層。在本解決方案中,服務(wù)器端數(shù)據(jù)的更新是在移動設(shè)備端來觸發(fā),移動設(shè)備端查看并操作數(shù)據(jù)、處理一些或所有的業(yè)務(wù)規(guī)則,同時提供一個豐富的用戶界面做出響應(yīng),因此Web ServiCe中既包含了各種對服務(wù)器端數(shù)據(jù)庫取的操作還包含了各種對服務(wù)器端數(shù)據(jù)庫存的操作。具體的系統(tǒng)架構(gòu)如圖1所示。

下面簡單介紹利用Visual Studio.NET 2008環(huán)境來實現(xiàn)整個流程。

1)建立Web ServiCe

建立好ASP.NET web service 工程后,在文件Service.cs中添加連接和存取服務(wù)器數(shù)據(jù)源(如oracle等)的操作。

2)本地調(diào)用Web ServiCe

部署Web Service后,新建一個Smart Device應(yīng)用程序(移動設(shè)備程序)項目,添加Web引用會在本地生成代理文件Ref-erenCe.cs,可修改此文件按需調(diào)用不同的Web ServiCe。

在.NET環(huán)境中調(diào)用Web Service的方法和創(chuàng)建本地類并調(diào)用其方法的過程是十分類似的。由于這只是簡單介紹使用Web ServiCe的整個流程,所以業(yè)務(wù)規(guī)則并沒有真正體現(xiàn)出來,實際的業(yè)務(wù)復(fù)雜的多,需要控制數(shù)據(jù)重復(fù)多、同步失敗等問題,但都是建立在最基本的存取數(shù)據(jù)操作上。另外考慮到網(wǎng)絡(luò)及安全等因素,在實際的商業(yè)軟件的開發(fā)中還需要加入異常處理等代碼。

2.2 Web Service數(shù)據(jù)壓縮傳輸

XML Web ServiCe是通過SOAP(簡單對象訪問協(xié)議)協(xié)議進(jìn)行交互的,而SOAP消息是利用XML進(jìn)行描述的。使用XML描述SOAP消息的好處是使得Web Service可以跨平臺調(diào)用,成就了Web Service的巨大魅力。移動終端的性能,無線或偶爾連接的網(wǎng)絡(luò)等因素對傳輸性能提出了更高的要求。基于SOAP協(xié)議的Web Services已經(jīng)成為網(wǎng)絡(luò)應(yīng)用發(fā)展的主流,其主要機(jī)制有基于數(shù)據(jù)的壓縮,基于Web Service附件技術(shù),基于訪問模式的優(yōu)化(異步),基于緩存機(jī)制的優(yōu)化等等。在移動平臺的應(yīng)用中主要也采用前兩種機(jī)制。下面利用這些機(jī)制對我們的解決方案進(jìn)行優(yōu)化得到基于Web ServiCe的嵌入式數(shù)據(jù)庫同步更新數(shù)據(jù)壓縮傳輸解決方案。

2.2.1序列化與反序列化

在數(shù)據(jù)傳輸之前要將數(shù)據(jù)(對象)轉(zhuǎn)換成可保持或傳輸?shù)母袷剑@一過程稱為序列化,與序列化相對的是反序列化,它將數(shù)據(jù)流轉(zhuǎn)換為對象。序列化用在WEB應(yīng)用開發(fā)中可以解決數(shù)據(jù)庫調(diào)用困難的問題,使用經(jīng)過序列化的流進(jìn)行傳輸效率會得到大大的提升,Web Service基于SOAP協(xié)議,SOAP協(xié)議也是以對象的可序列化為基礎(chǔ)的。XML序列化僅將對象的公共字段和屬性值或者方法的參數(shù)和返回值轉(zhuǎn)換(序列化)為符合特定XML架構(gòu)定義語言(XSD)文檔的XML流。對Web Service來說,這是最普遍應(yīng)用的一種淺層序列化。另一種為深層序列化,是將對象的公共字段和私有字段以及類的名稱(包括包含該類的程序集)都被轉(zhuǎn)換為字節(jié)流,然后寫入數(shù)據(jù)流。這就更方便、更準(zhǔn)確地還原了對象的副本。選擇序列化的原因有兩個:

(1)將對象的狀態(tài)保持在存儲媒體中,以便可以在以后重新創(chuàng)建精確的副本;

(2)通過值將對象從一個應(yīng)用程序域發(fā)送到另一個應(yīng)用程序域中。

在使用經(jīng)過序列化的流進(jìn)行傳輸效率會得到大大的提升,深層序列化可進(jìn)一步提高網(wǎng)絡(luò)傳輸?shù)男阅堋T谥髁鏖_發(fā)平臺和語言下,序列化已經(jīng)封裝成了接口或者開發(fā)平臺已經(jīng)把某類型數(shù)據(jù)進(jìn)行了序列化(XML序列化),使開發(fā)者從底層脫離出來以提高開發(fā)效率。序列化過程最后返回字節(jié)數(shù)組,可以大大壓縮數(shù)據(jù)集對象的體積。

2.2.2壓縮與解壓縮

數(shù)據(jù)壓縮技術(shù)一直以來是人們研究的重點,壓縮的效率也越來越高。現(xiàn)在已經(jīng)有很成熟的算法以及工具包(組件)。經(jīng)常使用的數(shù)據(jù)壓縮APl有zip、gzip等方式。Web Service中壓縮的使用非常簡單,就是在發(fā)送XML流之前對XML流進(jìn)行壓縮,在接收端對已經(jīng)壓縮的XML流進(jìn)行解壓縮就可以了。針對不同文件格式采用成熟的壓縮和解壓縮技術(shù),降低I/O器件的存取頻率,有助于增強(qiáng)整個系統(tǒng)的性能,尤其當(dāng)數(shù)據(jù)量比較大的時候,可以大大提高傳輸效率。對于純文本的XML,壓縮可以減少其80%以上的體積。壓縮和解壓縮往往會具有很大的CPU占有率以及內(nèi)存占有率,雖然可以使得XML的體積大大減少,但是其過程卻是十分耗費(fèi)系統(tǒng)資源的。對于配置不高的客戶端甚至是服務(wù)器端,都會造成不小的壓力。而對于系統(tǒng)響應(yīng)XML來講,一般都包含大量的數(shù)據(jù),導(dǎo)致其體積龐大,需要進(jìn)行壓縮處理。

2.2.3 Web Service附件技術(shù)

Web ServiCe使用SOAP作為其標(biāo)準(zhǔn)的數(shù)據(jù)交換協(xié)議,使用SOAP進(jìn)行傳遞的數(shù)據(jù)首先被序列化(XML序列化),也就是將數(shù)據(jù)轉(zhuǎn)換成字符串在XML文檔中傳送。盡管使用Base64編碼能夠?qū)⒍M(jìn)制數(shù)據(jù)放入SOAP報文中進(jìn)行傳輸,然而,其效率非常低下。Web Service附件技術(shù)的工作原理是將二進(jìn)制數(shù)據(jù)作為SOAP消息的附件,而不作為SOAP消息的內(nèi)容進(jìn)行發(fā)送。這樣可以避免對二進(jìn)制數(shù)據(jù)進(jìn)行XML序列化,因為序列化的只是SOAP消息的內(nèi)容。

我們在傳輸二進(jìn)制文件,如圖像、聲音和視頻等,利用WebService附件技術(shù)傳輸和處理效率會得到進(jìn)一步提高。在我們的嵌入式數(shù)據(jù)庫同步解決方案中主要利用Web Service附件技術(shù)傳輸壓縮后的二進(jìn)制數(shù)據(jù)集以提高性能,當(dāng)然上傳下載二進(jìn)制文件(如圖2)可直接使用附件技術(shù)。

綜上所述,我們將Web Service數(shù)據(jù)壓縮傳輸技術(shù)應(yīng)用到最初的解決方案中,得到更優(yōu)化的系統(tǒng)結(jié)構(gòu)圖(圖2)。

3實驗結(jié)果

本實驗主要是以微軟的.NET平臺實現(xiàn)SQL Server CE與Oracle同步更新為例,得到一種基于Web Service的嵌入式數(shù)據(jù)庫同步更新的解決方案,并使之最優(yōu)化,對其他系統(tǒng)的搭建、開發(fā)具有借鑒和示范效應(yīng)。

4結(jié)束語

本文針對實際移動應(yīng)用軟件中,對嵌入式數(shù)據(jù)庫與服務(wù)器數(shù)據(jù)源同步更新兼容性問題提出了基于Web Service的一種解決方案,并考慮到移動終端性能和網(wǎng)絡(luò)性能等對解決方案進(jìn)行了優(yōu)化以解決數(shù)據(jù)傳輸性能問題。雖然本方案解決了系統(tǒng)兼容性和數(shù)據(jù)傳輸性能問題,但是沒有對安全問題進(jìn)行探討,實際商業(yè)或科研應(yīng)用中可以根據(jù)需要加入Web Service訪問加密技術(shù)、簽名技術(shù)等安全機(jī)制,以便得到更完美的解決方案。

參考文獻(xiàn):

[1]萬忠.移動應(yīng)用開發(fā)行業(yè)現(xiàn)狀分析[J].中國科技縱橫,2017(8).

[2]王輝,馬維華.基于SQL Server CE數(shù)據(jù)同步技術(shù)的研究與實現(xiàn)[J].計算機(jī)技術(shù)與發(fā)展,2008,18(4):232-235.

[3]劉軍.基于Web Service的數(shù)據(jù)庫同步系統(tǒng)的設(shè)計與實現(xiàn)研究[J].電子技術(shù)與軟件工程,2017(2).

[4]劉益.基于Web Service移動數(shù)據(jù)的同步[J].(數(shù)字通信)前沿技術(shù),2011.

【通聯(lián)編輯:李雅琪】

收稿日期:2020-03-27

作者簡介:王國飛(1980-),河南洛陽人,畢業(yè)于武漢大學(xué)計算機(jī)學(xué)院,碩士,研究方向:計算機(jī)應(yīng)用技術(shù)。

主站蜘蛛池模板: 日韩亚洲综合在线| 国产微拍一区| 亚洲国产理论片在线播放| 久久窝窝国产精品午夜看片| 成人免费黄色小视频| 伊人久久大线影院首页| 国产亚洲精品yxsp| 国产AV毛片| 欧美成人a∨视频免费观看| 青青网在线国产| 91蝌蚪视频在线观看| 亚洲狼网站狼狼鲁亚洲下载| 四虎影视8848永久精品| 欧美日韩精品在线播放| 亚洲愉拍一区二区精品| 成人中文在线| 黄色网页在线播放| 国产亚洲精品资源在线26u| 99视频在线免费| 久草热视频在线| 91青青在线视频| 精品少妇人妻无码久久| 国产又爽又黄无遮挡免费观看 | 熟妇丰满人妻| 日韩免费毛片视频| 欧美激情首页| 福利视频一区| 精品国产黑色丝袜高跟鞋| 久久99国产精品成人欧美| 免费精品一区二区h| 国产91无码福利在线| 精品三级网站| 亚洲有无码中文网| 日韩最新中文字幕| 国产精品极品美女自在线| 欧美日韩在线成人| 日韩无码黄色网站| 在线视频精品一区| 狼友av永久网站免费观看| 久热99这里只有精品视频6| 国内精品久久人妻无码大片高| 国产精品自在在线午夜| 亚洲天堂视频网站| 国产一区二区视频在线| 亚洲国产亚洲综合在线尤物| 欧美中文字幕在线二区| 熟妇丰满人妻av无码区| 中文字幕永久在线观看| 伊人欧美在线| 草草线在成年免费视频2| 久草青青在线视频| 永久毛片在线播| 久久www视频| 久久久久国产精品熟女影院| 99精品免费在线| 亚洲综合婷婷激情| av一区二区三区高清久久| 亚洲人成在线精品| 欧美激情福利| 亚洲美女AV免费一区| 国产精品无码久久久久久| 一级毛片基地| 国产高清在线观看| 亚洲中文字幕av无码区| 亚洲AV无码乱码在线观看裸奔| 亚洲天堂福利视频| 国产成人亚洲精品无码电影| 1024国产在线| 亚洲日韩精品伊甸| 人妻丰满熟妇AV无码区| 在线观看av永久| 在线播放91| 欧美亚洲国产精品第一页| 国产91无码福利在线| 亚洲综合在线最大成人| 亚洲精品免费网站| 国产91无码福利在线| 亚洲成人免费在线| 国产精品自在线拍国产电影| 久久国产香蕉| 国产精品专区第1页| 99精品热视频这里只有精品7|