本發(fā)明涉及消息隊(duì)列及數(shù)據(jù)傳輸領(lǐng)域,具體的說(shuō)是一種基于消息隊(duì)列的數(shù)據(jù)傳輸系統(tǒng)和方法。
背景技術(shù):
目前,隨著計(jì)算機(jī)科技的發(fā)展,互聯(lián)網(wǎng)技術(shù)蓬勃發(fā)展,網(wǎng)絡(luò)信息安全越來(lái)越受到用戶的重視。如何在方便的訪問數(shù)據(jù)的同時(shí)又能保護(hù)數(shù)據(jù)的安全,使其不在互聯(lián)網(wǎng)上泄露,成為每一個(gè)軟件工程師的非常重要的技術(shù)任務(wù)。
在如今的網(wǎng)絡(luò)部署中,數(shù)據(jù)庫(kù)存在于專網(wǎng)域,在互聯(lián)網(wǎng)無(wú)法直接訪問數(shù)據(jù)庫(kù),應(yīng)用必須暴露在互聯(lián)網(wǎng)中供用戶調(diào)用;而應(yīng)用直接訪問數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)的管理系統(tǒng)直接將數(shù)據(jù)傳送給應(yīng)用。這種傳統(tǒng)的數(shù)據(jù)傳輸方式存在以下問題:1)應(yīng)用接口直接暴露在互聯(lián)網(wǎng)上,容易被黑客攻破進(jìn)而非法獲取數(shù)據(jù);2)部署應(yīng)用直接連接數(shù)據(jù)庫(kù)訪問數(shù)據(jù),容易被非法調(diào)用;3)應(yīng)用服務(wù)與數(shù)據(jù)庫(kù)之間網(wǎng)絡(luò)環(huán)境要求較高,研發(fā)部署成本較高。
鑒于傳統(tǒng)的數(shù)據(jù)傳輸方式下,很容易造成數(shù)據(jù)在互聯(lián)網(wǎng)上泄露,給數(shù)據(jù)安全性帶來(lái)極大風(fēng)險(xiǎn),可能給企業(yè)或用戶帶來(lái)嚴(yán)重?fù)p失。因此,如何安全地從互聯(lián)網(wǎng)應(yīng)用訪問位于專網(wǎng)的數(shù)據(jù)庫(kù),如何保護(hù)用戶的數(shù)據(jù)安全,成為當(dāng)前迫在眉睫急需解決的問題。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明針對(duì)目前技術(shù)發(fā)展的需求和不足之處,提供一種基于消息隊(duì)列的數(shù)據(jù)傳輸系統(tǒng)和方法。
本發(fā)明所述一種基于消息隊(duì)列的數(shù)據(jù)傳輸系統(tǒng)和方法,解決上述技術(shù)問題采用的技術(shù)方案如下:所述基于消息隊(duì)列的數(shù)據(jù)傳輸系統(tǒng),采用消息隊(duì)列的方式將數(shù)據(jù)與應(yīng)用服務(wù)分離,其系統(tǒng)架構(gòu)包括客戶端、應(yīng)用服務(wù)器、消息隊(duì)列服務(wù)器以及數(shù)據(jù)庫(kù),所述數(shù)據(jù)庫(kù)部署于內(nèi)網(wǎng)網(wǎng)絡(luò),所述應(yīng)用服務(wù)器、消息隊(duì)列服務(wù)器部署于互聯(lián)網(wǎng)網(wǎng)絡(luò);
所述客戶端向所述應(yīng)用服務(wù)器發(fā)送獲取數(shù)據(jù)的請(qǐng)求,并能夠接收所述應(yīng)用服務(wù)器返回的數(shù)據(jù);所述應(yīng)用服務(wù)器接收到請(qǐng)求,對(duì)請(qǐng)求消息進(jìn)行解密分析,將請(qǐng)求消息封裝發(fā)送給所述消息隊(duì)列服務(wù)器;所述消息隊(duì)列服務(wù)器接收到消息,對(duì)消息進(jìn)行分析,所述消息隊(duì)列服務(wù)器調(diào)用所述數(shù)據(jù)庫(kù)的管理系統(tǒng);所述數(shù)據(jù)庫(kù)的管理系統(tǒng)將數(shù)據(jù)返回給消息隊(duì)列服務(wù)器;所述消息隊(duì)列服務(wù)器獲取數(shù)據(jù)庫(kù)數(shù)據(jù)后,對(duì)數(shù)據(jù)進(jìn)行封裝返回給所述應(yīng)用服務(wù)器;所述應(yīng)用服務(wù)器接收到數(shù)據(jù),封裝加密數(shù)據(jù)并返回給所述客戶端。
優(yōu)選的,所述基于消息隊(duì)列的數(shù)據(jù)傳輸系統(tǒng)還包括消息服務(wù)器,所述消息服務(wù)器部署于內(nèi)網(wǎng)網(wǎng)絡(luò),用于管理存儲(chǔ)數(shù)據(jù)請(qǐng)求消息;所述消息隊(duì)列服務(wù)器接收到消息,對(duì)消息進(jìn)行分析,并將消息發(fā)送到所述消息服務(wù)器進(jìn)行存儲(chǔ);同時(shí),所述消息隊(duì)列服務(wù)器調(diào)用所述數(shù)據(jù)庫(kù)的管理系統(tǒng),所述數(shù)據(jù)庫(kù)的管理系統(tǒng)將數(shù)據(jù)發(fā)送到所述消息服務(wù)器進(jìn)行存儲(chǔ);并且,所述消息服務(wù)器將數(shù)據(jù)庫(kù)數(shù)據(jù)返回給所述消息隊(duì)列服務(wù)器。
優(yōu)選的,所述基于消息隊(duì)列的數(shù)據(jù)傳輸系統(tǒng)中,所述消息服務(wù)器與所述消息隊(duì)列服務(wù)器之間設(shè)置有防火墻,所述防火墻是位于內(nèi)網(wǎng)網(wǎng)絡(luò)與外部互聯(lián)網(wǎng)網(wǎng)絡(luò)之間的網(wǎng)絡(luò)安全系統(tǒng)。
一種基于消息隊(duì)列的數(shù)據(jù)傳輸方法,通過一基于消息隊(duì)列的數(shù)據(jù)傳輸系統(tǒng),所述數(shù)據(jù)傳輸系統(tǒng)的系統(tǒng)架構(gòu)包括客戶端、應(yīng)用服務(wù)器、消息隊(duì)列服務(wù)器以及數(shù)據(jù)庫(kù),所述數(shù)據(jù)庫(kù)部署于內(nèi)網(wǎng)網(wǎng)絡(luò),所述應(yīng)用服務(wù)器、消息隊(duì)列服務(wù)器部署于互聯(lián)網(wǎng)網(wǎng)絡(luò);其具體實(shí)現(xiàn)步驟如下:
1)用戶通過所述客戶端對(duì)所述應(yīng)用服務(wù)器發(fā)送請(qǐng)求,請(qǐng)求獲取數(shù)據(jù);
2)所述應(yīng)用服務(wù)器接收到請(qǐng)求后,對(duì)請(qǐng)求進(jìn)行解密分析,將請(qǐng)求消息進(jìn)行封裝發(fā)送至所述消息隊(duì)列服務(wù)器;
3)所述消息隊(duì)列服務(wù)器接收到消息后,對(duì)消息進(jìn)行分析,調(diào)用所述數(shù)據(jù)庫(kù)的管理系統(tǒng),所述數(shù)據(jù)庫(kù)的管理系統(tǒng)將數(shù)據(jù)返回給消息隊(duì)列服務(wù)器;
4)所述消息隊(duì)列服務(wù)器獲取數(shù)據(jù)庫(kù)數(shù)據(jù)后,將數(shù)據(jù)進(jìn)行封裝,再返回給所述應(yīng)用服務(wù)器;
5)所述應(yīng)用服務(wù)器對(duì)數(shù)據(jù)進(jìn)行封裝、加密,返還給所述客戶端;
6)通過所述客戶端將數(shù)據(jù)展示給用戶。
優(yōu)選的,所述步驟3)中,所述消息隊(duì)列服務(wù)器接收到消息,對(duì)消息進(jìn)行分析,并將消息發(fā)送到消息服務(wù)器進(jìn)行存儲(chǔ);同時(shí),所述消息隊(duì)列服務(wù)器調(diào)用所述數(shù)據(jù)庫(kù)的管理系統(tǒng),所述數(shù)據(jù)庫(kù)的管理系統(tǒng)將數(shù)據(jù)發(fā)送到所述消息服務(wù)器進(jìn)行存儲(chǔ);并且,所述消息服務(wù)器將數(shù)據(jù)庫(kù)數(shù)據(jù)返回給所述消息隊(duì)列服務(wù)器。
本發(fā)明所述一種基于消息隊(duì)列的數(shù)據(jù)傳輸系統(tǒng)和方法,與現(xiàn)有技術(shù)相比具有的有益效果是:本發(fā)明改變了傳統(tǒng)的應(yīng)用部署方案,通過消息隊(duì)列的方式將數(shù)據(jù)與應(yīng)用分離,應(yīng)用不與數(shù)據(jù)庫(kù)直接連通,應(yīng)用服務(wù)器不能直接訪問數(shù)據(jù),數(shù)據(jù)庫(kù)的管理系統(tǒng)也不直接將數(shù)據(jù)傳送給應(yīng)用服務(wù)器;從而避免了用戶敏感數(shù)據(jù)信息的泄露,保證了用戶數(shù)據(jù)的安全,避免重要數(shù)據(jù)泄露所引起的重大損失,同時(shí)降低了網(wǎng)絡(luò)安全維護(hù)成本;并且該數(shù)據(jù)傳輸系統(tǒng)部署簡(jiǎn)單,不需要再作復(fù)雜的網(wǎng)絡(luò)安全配置,數(shù)據(jù)安全性得到保障,提高了應(yīng)用服務(wù)器開發(fā)的效率。
附圖說(shuō)明
附圖1為所述基于消息隊(duì)列的數(shù)據(jù)傳輸系統(tǒng)的示意框圖。
具體實(shí)施方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明白,以下結(jié)合具體實(shí)施例,對(duì)本發(fā)明所述一種基于消息隊(duì)列的數(shù)據(jù)傳輸系統(tǒng)和方法進(jìn)一步詳細(xì)說(shuō)明。
本發(fā)明提出了一種基于消息隊(duì)列的數(shù)據(jù)傳輸系統(tǒng)和方法,通過消息隊(duì)列的方式將數(shù)據(jù)與應(yīng)用分離,將數(shù)據(jù)庫(kù)系統(tǒng)部署于內(nèi)網(wǎng)網(wǎng)絡(luò),而應(yīng)用服務(wù)器部署于互聯(lián)網(wǎng)網(wǎng)絡(luò),應(yīng)用服務(wù)器不與數(shù)據(jù)庫(kù)直接連通,應(yīng)用服務(wù)器不能直接訪問數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)的管理系統(tǒng)也不直接將數(shù)據(jù)傳送給應(yīng)用服務(wù)器;而是在應(yīng)用服務(wù)器與數(shù)據(jù)庫(kù)之間增加消息隊(duì)列服務(wù)器,通過消息隊(duì)列服務(wù)器對(duì)請(qǐng)求數(shù)據(jù)進(jìn)行封裝,再返還給應(yīng)用服務(wù)器,進(jìn)而返還給用戶。本發(fā)明中整個(gè)數(shù)據(jù)傳輸過程,避免了數(shù)據(jù)暴露于互聯(lián)網(wǎng),提高了數(shù)據(jù)的安全性。
實(shí)施例:
本實(shí)施例所述基于消息隊(duì)列的數(shù)據(jù)傳輸系統(tǒng),采用消息隊(duì)列的方式將數(shù)據(jù)與應(yīng)用服務(wù)分離,如附圖1所示,其系統(tǒng)架構(gòu)包括客戶端、應(yīng)用服務(wù)器、消息隊(duì)列服務(wù)器以及數(shù)據(jù)庫(kù),所述數(shù)據(jù)庫(kù)部署于內(nèi)網(wǎng)網(wǎng)絡(luò),所述應(yīng)用服務(wù)器、消息隊(duì)列服務(wù)器部署于互聯(lián)網(wǎng)網(wǎng)絡(luò);
所述客戶端向所述應(yīng)用服務(wù)器發(fā)送獲取數(shù)據(jù)的請(qǐng)求,并能夠接收所述應(yīng)用服務(wù)器返回的數(shù)據(jù);所述應(yīng)用服務(wù)器接收到請(qǐng)求,對(duì)請(qǐng)求消息進(jìn)行解密分析,將請(qǐng)求消息封裝發(fā)送給所述消息隊(duì)列服務(wù)器;所述消息隊(duì)列服務(wù)器接收到消息,對(duì)消息進(jìn)行分析,所述消息隊(duì)列服務(wù)器調(diào)用所述數(shù)據(jù)庫(kù)的管理系統(tǒng);所述數(shù)據(jù)庫(kù)的管理系統(tǒng)將數(shù)據(jù)返回給消息隊(duì)列服務(wù)器;所述消息隊(duì)列服務(wù)器獲取數(shù)據(jù)庫(kù)數(shù)據(jù)后,對(duì)數(shù)據(jù)進(jìn)行封裝返回給所述應(yīng)用服務(wù)器;所述應(yīng)用服務(wù)器接收到數(shù)據(jù),封裝加密數(shù)據(jù)并返回給所述客戶端。
如附圖1所示,所述基于消息隊(duì)列的數(shù)據(jù)傳輸系統(tǒng)還包括消息服務(wù)器,所述消息服務(wù)器部署于內(nèi)網(wǎng)網(wǎng)絡(luò),用于管理存儲(chǔ)數(shù)據(jù)請(qǐng)求消息;所述消息隊(duì)列服務(wù)器通過所述消息服務(wù)器與所述數(shù)據(jù)庫(kù)通信;所述消息隊(duì)列服務(wù)器接收到消息,對(duì)消息進(jìn)行分析,并將消息發(fā)送到所述消息服務(wù)器進(jìn)行存儲(chǔ),同時(shí)所述消息隊(duì)列服務(wù)器調(diào)用所述數(shù)據(jù)庫(kù)的管理系統(tǒng),所述數(shù)據(jù)庫(kù)的管理系統(tǒng)將數(shù)據(jù)發(fā)送到消息服務(wù)器進(jìn)行存儲(chǔ);同時(shí)所述消息服務(wù)器將數(shù)據(jù)返回給所述消息隊(duì)列服務(wù)器。
如附圖1所示,所述基于消息隊(duì)列的數(shù)據(jù)傳輸系統(tǒng)中,所述消息服務(wù)器與所述消息隊(duì)列服務(wù)器之間設(shè)置有防火墻,所述防火墻是位于內(nèi)網(wǎng)網(wǎng)絡(luò)與外部互聯(lián)網(wǎng)網(wǎng)絡(luò)之間的網(wǎng)絡(luò)安全系統(tǒng),通過防火墻進(jìn)一步增強(qiáng)了數(shù)據(jù)傳輸?shù)陌踩浴?/p>
采用所述基于消息隊(duì)列的數(shù)據(jù)傳輸系統(tǒng),提出了基于消息隊(duì)列的數(shù)據(jù)傳輸方法,其具體實(shí)現(xiàn)步驟如下:
1)用戶通過客戶端對(duì)應(yīng)用服務(wù)器發(fā)送請(qǐng)求,請(qǐng)求獲取數(shù)據(jù);
2)應(yīng)用服務(wù)器接收到請(qǐng)求后,對(duì)請(qǐng)求進(jìn)行解密分析,將請(qǐng)求消息進(jìn)行封裝發(fā)送至消息隊(duì)列服務(wù)器;
3)消息隊(duì)列服務(wù)器接收到消息后,對(duì)消息進(jìn)行分析,調(diào)用數(shù)據(jù)庫(kù)的管理系統(tǒng),數(shù)據(jù)庫(kù)的管理系統(tǒng)將數(shù)據(jù)返回給消息隊(duì)列服務(wù)器;
4)消息隊(duì)列服務(wù)器獲取數(shù)據(jù)庫(kù)數(shù)據(jù)后,將數(shù)據(jù)進(jìn)行封裝,再返回給應(yīng)用服務(wù)器;
5)應(yīng)用服務(wù)器對(duì)數(shù)據(jù)進(jìn)行封裝、加密,返還給客戶端;
6)通過客戶端將數(shù)據(jù)展示給用戶。
所述步驟3)中,所述消息隊(duì)列服務(wù)器接收到消息,對(duì)消息進(jìn)行分析,并將消息發(fā)送到消息服務(wù)器進(jìn)行存儲(chǔ);同時(shí),所述消息隊(duì)列服務(wù)器調(diào)用所述數(shù)據(jù)庫(kù)的管理系統(tǒng),所述數(shù)據(jù)庫(kù)的管理系統(tǒng)將數(shù)據(jù)發(fā)送到消息服務(wù)器進(jìn)行存儲(chǔ);并且,所述消息服務(wù)器將數(shù)據(jù)返回給所述消息隊(duì)列服務(wù)器。
具體實(shí)施方式僅是本發(fā)明的具體個(gè)案,本發(fā)明的專利保護(hù)范圍包括但不限于上述具體實(shí)施方式,任何符合本發(fā)明的權(quán)利要求書的且任何所屬技術(shù)領(lǐng)域的普通技術(shù)人員對(duì)其所做的適當(dāng)變化或替換,皆應(yīng)落入本發(fā)明的專利保護(hù)范圍。