專利名稱:一種基于b/s的數據傳輸系統(tǒng)的制作方法
技術領域:
本發(fā)明涉及網絡數據傳輸領域,具體為一種基于B/S的數據傳輸系統(tǒng)。
技術背景
B/S結構即瀏覽器和服務器結構。它是隨著hternet技術的興起,對C/S結構的一種變化或者改進的結構。在這種結構下,用戶工作界面是通過www瀏覽器來實現(xiàn),極少部分事務邏輯在前端(Browser)實現(xiàn),但是主要事務邏輯在服務器端(Server)實現(xiàn),形成所謂三層3-tier結構。這樣就大大簡化了客戶端電腦載荷,減輕了系統(tǒng)維護與升級的成本和工作量,降低了用戶的總體成本(TCO)。
目前在瀏覽器中傳輸數據普遍采用Web Service技術,而Wfeb Service是一種新的web應用程序分支,他們是自包含、自描述、模塊化的應用,可以發(fā)布、定位和通過web調用。Web Service可以執(zhí)行從簡單的請求到復雜商務處理的任何功能。一旦部署以后,其他ffeb Service應用程序可以發(fā)現(xiàn)并調用它部署的服務,另外ffeb Service是一種應用程序,它可以使用標準的互聯(lián)網協(xié)議,像超文本傳輸協(xié)議(HTTP)和XML,將功能綱領性地體現(xiàn)在互聯(lián)網和企業(yè)內部網上,但是使用Web Service傳輸數據對開發(fā)人員要求較高,必須熟練的掌握Web Service相關技術。
Web Service現(xiàn)如今已經成為SOA實現(xiàn)標準之一,Web Service的優(yōu)點在于松散的處理異構系統(tǒng)之間的通信和數據交換,可以隨機應變的處理企業(yè)各個系統(tǒng)之間的整合問題,但是同時,Web Service采用XML標準進行系統(tǒng)間的數據傳輸,現(xiàn)有的數據傳輸步驟是數據分析系統(tǒng)發(fā)送數據傳輸請求——數據管理系統(tǒng)響應并將數據傳輸給數據分析系統(tǒng)——數據分析系統(tǒng)將調用函數分析接受的數據并將運行函數得到的數據傳輸給數據管理系統(tǒng)——數據管理系統(tǒng)將所述數據存入數據庫,當傳輸的數據量較大時,就會導致數據傳輸效率下降。發(fā)明內容
本發(fā)明的目的在于,提供一種基于B/S的數據傳輸系統(tǒng),在進行大量的數據傳輸時,提高數據傳輸效率。
為解決以上技術問題,本發(fā)明提供的技術方案是,一種基于B/S的數據傳輸系統(tǒng), 包括數據分析系統(tǒng)和數據管理系統(tǒng),所述數據分析系統(tǒng)將需要調用的函數和參數傳輸到數據管理系統(tǒng),數據管理系統(tǒng)根據接收的函數和參數調用相應的數據,并運行函數,將執(zhí)行函數得到的數據返回到數據分析系統(tǒng)。
所述數據分析系統(tǒng)通過發(fā)送HTTP請求將數據傳輸給數據管理系統(tǒng),所述數據管理系統(tǒng)通過發(fā)送HTTP請求返回數據給數據分析系統(tǒng)。
所述數據分析系統(tǒng)和數據管理系統(tǒng)分別設置有REST接口,通過REST接口來傳輸數據。
所述數據分析系統(tǒng)在傳輸數據之前,對傳輸數據進行加密,所述數據管理系統(tǒng)返3回數據之前,對返回數據進行加密。加密的算法為RSA、BL0WFISH、MD5和DES中的任一種。
所述數據分析系統(tǒng)接收返回數據之后,對返回數據進行解密,所述數據管理系統(tǒng)接收傳輸數據之后,對傳輸數據進行解密。
所述數據分析系統(tǒng)和數據管理系統(tǒng)對接受的數據解密之后,解析該數據并查找與該數據相對應的REST接口。
當查找不到數據調用的接口類型時,所述數據分析系統(tǒng)和數據管理系統(tǒng)分別發(fā)送空的數據給對方,并提示對方找不到指定類型的數據接口。
當查找到數據調用的接口類型時,所述數據管理系統(tǒng)根據HTTP請求從數據庫中調取相應的數據。
所述數據管理系統(tǒng)對執(zhí)行函數得到的分析數據進行封裝,并分配REST接口給封裝數據,加密后通過HTTP請求,將分析數據返回給數據分析系統(tǒng)。
當查找到數據調用的接口類型時,所述數據管理系統(tǒng)根據HTTP請求從數據庫中調取相應的數據。
本發(fā)明提供的基于B/S的數據傳輸系統(tǒng),是將需要調用的函數和參數封裝后發(fā)送 HTTP請求傳輸到數據管理系統(tǒng),由數據管理系統(tǒng)查找所需要的數據并運行函數,將執(zhí)行函數得到的數據返回給數據分析系統(tǒng),與現(xiàn)有技術相比,本發(fā)明減少了數據管理系統(tǒng)將運行函數和參數需要的數據返回數據分析系統(tǒng)的步驟,從而減少了數據的傳輸量和數據傳輸的次數,提高了數據傳輸率。
圖1為本發(fā)明基于B/S的數據傳輸系統(tǒng)的數據流向圖。
圖2為本發(fā)明基于B/S的數據傳輸系統(tǒng)中數據管理系統(tǒng)的工作過程圖。
圖3為本發(fā)明數據分析系統(tǒng)將傳輸數據封裝的工作過程圖。
具體實施方式
本發(fā)明的目的在于,提供一種基于B/S的數據傳輸系統(tǒng),減少傳輸的數據量和數據傳輸的次數,從而提高數據傳輸效率。
為了使本領域的技術人員更好地理解本發(fā)明的技術方案,下面結合附圖和具體實施例對本發(fā)明作進一步的詳細說明。
參見圖1,本發(fā)明基于B/S的數據傳輸系統(tǒng),包括數據分析系統(tǒng)和數據管理系統(tǒng)和數據庫,其中,數據分析系統(tǒng)和數據管理系統(tǒng)分別設置有REST接口,用于外部調用。
所述REST(Itepresentational State Transfer 表述性狀態(tài)轉移)是一種針對網絡應用的設計和開發(fā)方式,可以降低開發(fā)的復雜性,提高系統(tǒng)的可伸縮性,REST有五項最基本的設計概念和準則,其一網絡上的所有事物都被抽象為資源(resource);其二 每個資源對應一個唯一的資源標(resource identifier);其三通過通用的連接器接口 (generic connector interface)對資源進行操作;其四對資源的各種操作不會改變資源標識;其五所有的操作都是無狀態(tài)的(stateless),其中,REST在原有的架構上增加了三個新規(guī)范統(tǒng)一接口,分層系統(tǒng)和按需代碼。
REST架構風格的核心特征就是強調組件之間有一個統(tǒng)一的接口即統(tǒng)一接口,在REST世界里,網絡上所有的事物都被抽象為資源,而REST就是通過通用的鏈接器接口對資源進行操作。這樣設計的好處是保證系統(tǒng)提供的服務都是解耦的,極大的簡化了系統(tǒng),從而改善了系統(tǒng)的交互性和可重用性。并且REST針對Web的常見情況做了優(yōu)化,使得REST接口被設計為可以高效的轉移大粒度的超媒體數據。
所述分層系統(tǒng)能夠提高各種層次之間的獨立性,為整個系統(tǒng)的復雜性設置了邊界,通過封裝遺留的服務,使新的服務器免受遺留客戶端的影響,這也就提高了系統(tǒng)的可伸縮性。
所述按需代碼的核心是REST允許對客戶端功能進行擴展。比如,通過下載并執(zhí)行 applet或腳本形式的代碼,來擴展客戶端功能。但這在改善系統(tǒng)可擴展性的同時,也降低了可見性。所以它只是REST的一個可選的約束。
另外,REST是基于HTTP請求的方式,而HTTP具有穿透防火墻的便捷性,并且REST 相對于ffeb Service開發(fā)簡單、靈活,這樣就確保了數據能夠更加快速傳輸,而且開發(fā)難度
本發(fā)明基于B/S的數據傳輸系統(tǒng)的具體數據流向如下
數據分析系統(tǒng)根據實際情況獲取所有目前需要調用的函數和參數等數據,并分配 RSET接口給上述數據,然后對所述數據進行加密,通過發(fā)送HTTP請求,將加密數據傳輸給數據管理系統(tǒng)。
數據管理系統(tǒng)接收到上述加密數據的同時對該加密數據進行解密,并查找與加密數據相對應的REST接口,根據查找對應的RSET接口的結果進行相應的操作,具體如下
若查找不到對應的REST接口,則返回空數據并對數據分析系統(tǒng)提示數據傳輸錯誤;
若查找到對應的REST接口,則解析接收的數據,得到數據分析系統(tǒng)傳輸過來的函數和參數等數據,數據管理系統(tǒng)根據上述函數和參數從數據庫中獲取與之對應的數據,并將獲取的數據載入函數并運行函數得到分析數據。
數據管理系統(tǒng)獲取所述分析數據后,一方面將該分析數據存入數據庫,另一方面給該分析數據分配REST接口,并進行加密后,通過發(fā)送HTTP請求,傳輸給數據分析系統(tǒng)。
數據分析系統(tǒng)接受到該HTTP請求,對該數據進行解密,并查找對應的REST接口, 根據查找對應的RSET接口的結果進行相應的操作,具體如下
若查找不到對應的REST接口,則返回空數據給數據管理系統(tǒng),并對數據管理系統(tǒng)進行提示;
若查找到對應的REST接口,則解析接收的數據,得到分析數據并進行顯示。
參見圖3,本發(fā)明基于B/S的數據傳輸系統(tǒng)中數據分析系統(tǒng)需要對傳輸的數據進行封裝,其具體步驟如下
S301、提取需要傳輸的數據
數據分析系統(tǒng)根據實際情況,提取所有需要運行的函數和參數等數據。
S302,對獲取的需要傳輸的數據進行封裝
數據分析系統(tǒng)對獲取的需要傳輸的數據的加上特定的頭和尾形成幀,再交付給物理層,這樣對數據進行第一次封裝。由于物理層只管電信號,這就必須要有一個特殊的電信號告訴物理層這是一個幀的開始和結尾,所有要給傳輸的數據加上是特定的頭和尾,這樣每幀的數據都會擁有一個特定的電信號。
S303、分配REST接口給封裝數據
REST架構風格的核心特征就是強調組件之間有一個統(tǒng)一的接口,數據分析系統(tǒng)給封裝數據分配一個REST接口,數據管理系統(tǒng)中就會有一個與之相對應的RSET接口,形成一一對應的關系。
S304、對分配了 REST接口的數據再次封裝
數據分析系統(tǒng)對封裝數據分配RSET接口之后會形成一個新的數據,通過對該數據的再次封裝,這樣物理層就會發(fā)送一個特定電信號,方便數據進行解析。
所述數據管理系統(tǒng)與數據分析系統(tǒng)對數據進行封裝的步驟基本一樣,無需再另行敘述了。
數據封裝完成之后,將數據進行傳輸,數據分析系統(tǒng)或數據管理系統(tǒng)接收到該數據之后,需要對數據進行解封,即當物理層接收到信號后,知道這是一個幀來了,經過模數轉換后交付給數據鏈路層,數據鏈路層剝離頭和尾把數據交付給上面的網絡層,得到該數據。
上層數據下來的時候就給他加特定的頭,相當于裝了個信封,就這樣一層層的裝下來,下層的數據送到上層就一層層的剝離頭(信封),直到最后沒有信封得到最終的數據為止,這就是封裝和解封裝的過程。
在需要傳輸的數據完成所有封裝之后,數據管理系統(tǒng)和數據分析對傳輸的數據進行加密,加密是以某種特殊的算法改變原有的信息數據,使得未授權的用戶即使獲得了已加密的信息,但因不知解密的方法,仍然無法了解信息的內容,而且即使知道加密解密算法方法,但是不知道解密的密鑰,同樣無法了解信息的內容,這樣進一步保證傳輸數據的安全。
根據實際需要,本發(fā)明基于B/S的數據傳輸系統(tǒng),可以選取加密的算法為RSA算法、DES算法、EIGamal算法、DSA算法、MD5算法和BL0WFISH算法等,其中RSA和AES加密算法都是完全公開的,一方取得已加密的數據,就算知道加密算法,若沒有加密的密鑰仍然不能打開被加密保護的信息。所以加密和解密的密鑰需要自我設定,并保證密鑰的隱秘和安全。
參見圖2,數據管理系統(tǒng)響應HTTP請求,并對接收的數據進行解析,對解析的函數和參數載入數據并運行,然后將運行函數的分析數據返回給數據分析系統(tǒng),其具體工作流程如下
S201、響應 HTTP 請求
數據管理系統(tǒng)接受到HTTP請求之后,并響應該HTTP請求,同時接收傳輸的數據。
S202、對接受的數據進行解密
數據管理系統(tǒng)根據該數據傳輸系統(tǒng)采用的加密解密的算法和解密的密鑰,按照步驟對數據進行解密,得到整體封裝的數據。
S203、查找對應的RSET的接口
對整體封裝的數據進行解封,得到傳輸數據的RSET接口,由于RSET接口是統(tǒng)一接口,這樣數據管理系統(tǒng)就會查找與傳輸數據的RSET接口相對應的REST接口。
S204、返回空數據給數據分析系統(tǒng)并對其進行提示
若數據管理系統(tǒng)查找不到對用的REST接口,則返回一個空數據,并對數據分析提示數據傳輸錯誤。
S205、解析傳輸的數據獲取函數和參數
在數據管理系統(tǒng)之中找到對應的REST接口之后,進一步對該數據解封裝,這樣就會得到傳輸數據的內容,得到函數和參數。
S206、獲取函數和參數中所需要的數據
數據管理系統(tǒng)對函數和參數進行分析,將需要的所有數據從數據庫中查找,并將查找到數據載入函數和參數中。
S207、運行函數得到分析數據
在數據載入函數和參數之后,數據管理系統(tǒng)就會運行該函數,獲取到函數運行完成之后的數據,即分析數據。
S208,傳輸到數據庫
數據管理系統(tǒng)獲取到分析數據之后,將該分析數據傳輸到數據庫,提醒數據庫存儲該分析數據。
S209、對分析數據封裝并分配REST接口
數據管理系統(tǒng)獲取到分析數據之后,對所述分析數據進行封裝,然后給封裝的分析數據分配RSET接口,數據管理系統(tǒng)另行對所述分配接口后的分析數據進行再次封裝。
S210、對再次封裝的數據進行加密并傳輸
數據管理系統(tǒng)根據該數據傳輸系統(tǒng)采用的加密解密的算法和加密密鑰對再次封裝的數據進行加密,用于確保該數據在傳輸過程中的安全,然后發(fā)送HTTP請求,對加密數據進行傳輸。
經上述S201到S210等步驟之后,數據管理系統(tǒng)將獲取的分析數據進行封裝和加密之后,通過HTTP請求發(fā)送給數據分析系統(tǒng);而數據分析系統(tǒng)通過響應該HTTP請求,獲取傳輸的數據,并對該數據進行解密和解封裝之后,得到分析的數據并進行顯示。
與現(xiàn)有技術相比,本發(fā)明基于B/S的數據傳輸系統(tǒng),數據分析系統(tǒng)將函數和參數等傳輸給數據管理系統(tǒng),由數據管理系統(tǒng)運行函數得到分析數據,并將分析數據返回數據分析系統(tǒng),減少數據管理系統(tǒng)將函數和參數需要的數據傳輸到數據分析系統(tǒng)的步驟,由此可知,本發(fā)明不僅減少了數據傳輸的步驟,而且減少了傳輸的數據量,從而提高了數據傳輸效率。
以上僅是本發(fā)明的優(yōu)選實施方式,應當指出的是,上述優(yōu)選實施方式不應視為對本發(fā)明的限制,本發(fā)明的保護范圍應當以權利要求所限定的范圍為準。對于本技術領域的普通技術人員來說,在不脫離本發(fā)明的精神和范圍內,還可以做出若干改進和潤飾,這些改進和潤飾也應視為本發(fā)明的保護范圍。
權利要求
1.一種基于B/S的數據傳輸系統(tǒng),其特征在于,包括數據分析系統(tǒng)和數據管理系統(tǒng),所述數據分析系統(tǒng)將需要調用的函數和參數傳輸到數據管理系統(tǒng),數據管理系統(tǒng)根據接收的函數和參數調用相應的數據,并運行函數,將執(zhí)行函數得到的數據返回到數據分析系統(tǒng)。
2.如權利要求1所述的基于B/S的數據傳輸系統(tǒng),其特征在于,所述數據分析系統(tǒng)通過發(fā)送HTTP請求將數據傳輸給數據管理系統(tǒng),所述數據管理系統(tǒng)通過發(fā)送HTTP請求返回數據給數據分析系統(tǒng)。
3.如權利要求1所述的基于B/S的數據傳輸系統(tǒng),其特征在于,所述數據分析系統(tǒng)和數據管理系統(tǒng)分別設置有REST接口,通過REST接口來傳輸數據。
4.如權利要求1所述的基于B/S的數據傳輸系統(tǒng),其特征在于,所述數據分析系統(tǒng)在傳輸數據之前,對傳輸數據進行加密,所述數據管理系統(tǒng)返回數據之前,對返回數據進行加Γ t [ O
5.如權利要求4所述的基于B/S的數據傳輸系統(tǒng),其特征在于,加密的算法為RSA、 BLOffFISH, MD5 禾口 DES 中的任一種。
6.如權利要求4所述的基于B/S的數據傳輸系統(tǒng),其特征在于,所述數據分析系統(tǒng)接收返回數據之后,對返回數據進行解密,所述數據管理系統(tǒng)接收傳輸數據之后,對傳輸數據進行解密。
7.如權利要求6所述的基于B/S的數據傳輸系統(tǒng),其特征在于,所述數據分析系統(tǒng)和數據管理系統(tǒng)對接受的數據解密之后,解析該數據并查找與該數據相對應的REST接口。
8.如權利要求7所述的基于B/S的數據傳輸系統(tǒng),其特征在于,當查找不到數據調用的接口類型時,所述數據分析系統(tǒng)和數據管理系統(tǒng)分別發(fā)送空的數據給對方,并提示對方找不到指定類型的數據接口。
9.如權利要求7所述的基于B/S的數據傳輸系統(tǒng),其特征在于,當查找到數據調用的接口類型時,所述數據管理系統(tǒng)根據HTTP請求從數據庫中調取相應的數據。
10.如權利要求9所述的基于B/S的數據傳輸系統(tǒng),其特征在于,所述數據管理系統(tǒng)對執(zhí)行函數得到的分析數據進行封裝,并分配REST接口給封裝數據,加密后通過HTTP請求, 將分析數據返回給數據分析系統(tǒng)。
全文摘要
本發(fā)明公開一種基于B/S的數據傳輸系統(tǒng),包括數據分析系統(tǒng)和數據管理系統(tǒng),所述數據分析系統(tǒng)將需要調用的函數和參數通過HTTP請求傳輸到數據管理系統(tǒng),數據管理系統(tǒng)根據接收的函數和參數調用相應的數據,并運行函數,將執(zhí)行函數得到的數據返回到數據分析系統(tǒng)。本發(fā)明基于B/S的數據傳輸系統(tǒng),減少了數據的傳輸量和數據傳輸的次數,從而提高了數據傳輸率。
文檔編號H04L29/08GK102523307SQ20111045989
公開日2012年6月27日 申請日期2011年12月31日 優(yōu)先權日2011年12月31日
發(fā)明者張渝, 彭建平, 彭朝勇, 戴立新, 楊凱, 王澤勇, 王黎, 趙全軻, 陳云紅, 高曉蓉 申請人:成都主導科技有限責任公司, 西南交通大學