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

        ?

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

        2020-08-26 07:46:55王國飛李質(zhì)建
        電腦知識與技術(shù) 2020年20期
        關(guān)鍵詞:序列化

        王國飛 李質(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)化,以滿足實(shí)際商業(yè)或科研應(yīng)用的需要,是一種比較好的可行的解決方案,對系統(tǒng)項(xià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ù)庫實(shí)現(xiàn)同步更新,并兼容跨平臺之間的互操性,Web Service技術(shù)很好地解決了這個問題,在當(dāng)前的桌面分布式數(shù)據(jù)庫中Web Service已經(jīng)得到廣泛的應(yīng)用。本文主要探討通過Web Service實(shí)現(xiàn)嵌入式數(shù)據(jù)庫與服務(wù)器數(shù)據(jù)源的同步更新,并以微軟的.NET平臺實(shí)現(xiàn)SOL Server CE與Oracle同步更新為例,得到一種基于Web Ser-vlce的嵌入式數(shù)據(jù)庫同步更新的解決方案,并采用序列化、壓縮和附件技術(shù)等機(jī)制在性能上進(jìn)行優(yōu)化,最后得到優(yōu)化的解決方案。

        2基于Web Service的嵌入式數(shù)據(jù)庫同步更新解決方案實(shí)現(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一旦部署就可以在項(xiàng)目中調(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)及實(shí)現(xiàn)

        Web Service是完全基于XML/XSD的標(biāo)準(zhǔn)的新平臺,是個獨(dú)立的系統(tǒng)軟件,它可以進(jìn)行跨網(wǎng)絡(luò)的計(jì)算機(jī)操作,同時作為一種分布式的計(jì)算技術(shù),實(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)境來實(shí)現(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è)備程序)項(xiàng)目,添加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)出來,實(shí)際的業(yè)務(wù)復(fù)雜的多,需要控制數(shù)據(jù)重復(fù)多、同步失敗等問題,但都是建立在最基本的存取數(shù)據(jù)操作上。另外考慮到網(wǎng)絡(luò)及安全等因素,在實(shí)際的商業(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ò)等因素對傳輸性能提出了更高的要求?;赟OAP協(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ù)一直以來是人們研究的重點(diǎn),壓縮的效率也越來越高?,F(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報(bào)文中進(jìn)行傳輸,然而,其效率非常低下。Web Service附件技術(shù)的工作原理是將二進(jìn)制數(shù)據(jù)作為SOAP消息的附件,而不作為SOAP消息的內(nèi)容進(jìn)行發(fā)送。這樣可以避免對二進(jìn)制數(shù)據(jù)進(jìn)行XML序列化,因?yàn)樾蛄谢闹皇荢OAP消息的內(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實(shí)驗(yàn)結(jié)果

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

        4結(jié)束語

        本文針對實(shí)際移動應(yīng)用軟件中,對嵌入式數(shù)據(jù)庫與服務(wù)器數(shù)據(jù)源同步更新兼容性問題提出了基于Web Service的一種解決方案,并考慮到移動終端性能和網(wǎng)絡(luò)性能等對解決方案進(jìn)行了優(yōu)化以解決數(shù)據(jù)傳輸性能問題。雖然本方案解決了系統(tǒng)兼容性和數(shù)據(jù)傳輸性能問題,但是沒有對安全問題進(jìn)行探討,實(shí)際商業(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ù)的研究與實(shí)現(xiàn)[J].計(jì)算機(jī)技術(shù)與發(fā)展,2008,18(4):232-235.

        [3]劉軍.基于Web Service的數(shù)據(jù)庫同步系統(tǒng)的設(shè)計(jì)與實(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ì)算機(jī)學(xué)院,碩士,研究方向:計(jì)算機(jī)應(yīng)用技術(shù)。

        猜你喜歡
        序列化
        Oj庫反序列化攻擊面分析
        Java Web反序列化網(wǎng)絡(luò)安全漏洞分析
        基于FlatBuffers的機(jī)車通信數(shù)據(jù)序列化方法應(yīng)用研究
        如何建構(gòu)序列化閱讀教學(xué)
        甘肅教育(2020年14期)2020-09-11 07:58:36
        某物資管理調(diào)度系統(tǒng)的數(shù)據(jù)序列化技術(shù)
        面向Redis的數(shù)據(jù)序列化算法研究
        Java反序列化漏洞探析及其修復(fù)方法研究
        湖北電力(2016年11期)2016-11-07 07:25:37
        論初中語文作文的序列化訓(xùn)練
        Java 反序列化漏洞研究
        作文訓(xùn)練微格化、序列化初探
        語文知識(2015年12期)2015-02-28 22:02:15
        亚洲精品中文字幕免费专区 | 精品手机在线视频| 久久久久人妻精品一区5555| 日本在线观看一区二区视频| 女同同志熟女人妻二区| 少妇人妻中文字幕hd| 欧美国产精品久久久乱码| 黄视频国产| 久99久精品免费视频热77| 视频一区中文字幕日韩| av熟妇一区二区三区| 中文字幕一区日韩精品| 免费黄色电影在线观看| 手机色在线| 亚洲国产综合精品一区最新| 中文字幕人妻丝袜成熟乱| 国产天美传媒性色av| 国产午夜精品福利久久| 国产精品自拍网站在线| 搡女人真爽免费视频大全| 300部国产真实乱| 久久一日本道色综合久久大香| 国产av一区二区三区狼人香蕉| 亚洲深深色噜噜狠狠网站| 欧美日韩国产成人高清视频| 日韩爱爱视频| 日本午夜a级理论片在线播放| 国产香港明星裸体xxxx视频| 人人狠狠综合久久亚洲| 久久婷婷是五月综合色狠狠 | 亚洲天堂av中文字幕在线观看| 黑森林福利视频导航| 一本大道东京热无码中字| 亚洲产在线精品亚洲第一页| 青春草在线视频观看| 亚洲午夜福利在线观看| 日本色偷偷| 国产午夜免费一区二区三区视频| 国产成人精品午夜二三区波多野| 91免费永久国产在线观看| 超短裙老师在线观看一区|