两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

發(fā)送離線消息的方法及裝置與流程

文檔序號:12494745閱讀:314來源:國知局
發(fā)送離線消息的方法及裝置與流程

本發(fā)明涉及計算機技術領域,具體而言,本發(fā)明涉及一種發(fā)送離線消息的方法及一種發(fā)送離線消息的裝置。



背景技術:

隨著計算機技術的發(fā)展,各種終端設備已成為人們生活中必不可少的工具,各種功能強大的終端操作系統(tǒng)及終端應用程序不斷涌現(xiàn),為用戶帶來了更加便捷的體驗。當前的信息交互頻率不斷增多,終端應用程序與服務端或其他終端的交互數(shù)據(jù)信息也日益增多。

在現(xiàn)有的信息傳遞架構下,當用戶在終端應用程序中處于在線狀態(tài)時,可以實時地接收到服務端或其他終端向其發(fā)送數(shù)據(jù)信息,當用戶在終端應用程序中處于離線狀態(tài)時,即終端應用程序未被啟動運行,因此不能實時地接收到服務端或其他終端向其發(fā)送數(shù)據(jù)信息,隨后在用戶啟動進入終端應用程序后,將獲取應用程序在離線期間接收到的全部的離線數(shù)據(jù)。現(xiàn)有技術中,一般服務端將離線數(shù)據(jù)發(fā)送至終端后即會將離線數(shù)據(jù)進行刪除,但是在離線數(shù)據(jù)量較大的情況下,一方面,在向終端發(fā)送離線數(shù)據(jù)的過程中往往會發(fā)生鏈接中斷的情況,從而容易發(fā)生刪除終端未接收到的離線數(shù)據(jù)的情況,導致離線數(shù)據(jù)的丟失;另一方面,在接收到離線數(shù)據(jù)獲取請求后,若無法查找到相對應的某個離線數(shù)據(jù)時,將導致剩余的接收到離線數(shù)據(jù)獲取請求對應的離線數(shù)據(jù)處于排隊等待狀態(tài),無法及時將剩余的離線數(shù)據(jù)發(fā)送至終端應用程序。

因此,需要一種發(fā)送離線數(shù)據(jù)的方案,來解決現(xiàn)有技術中數(shù)據(jù)發(fā)送過程中離線數(shù)據(jù)丟失的情況以及發(fā)送離線數(shù)據(jù)的過程中容易產(chǎn)生堵塞的問題。



技術實現(xiàn)要素:

為克服上述技術問題或者至少部分地解決上述技術問題,特提出以下技術方案:

本發(fā)明的實施例提出了一種發(fā)送離線消息的方法,包括:

依據(jù)接收到的數(shù)據(jù)獲取請求確定對應的多個離線數(shù)據(jù);

將多個離線數(shù)據(jù)中的至少兩個并行發(fā)送至對應的至少兩個請求方;

接收請求方返回的針對任一離線數(shù)據(jù)的反饋信息;

依據(jù)反饋信息判斷請求方是否已正確接收到任一離線數(shù)據(jù);

依據(jù)判斷結果針對任一離線數(shù)據(jù)執(zhí)行相應的處理操作。

優(yōu)選地,將多個離線數(shù)據(jù)中的至少兩個并行發(fā)送至對應的至少兩個請求方,包括:

將至少兩個離線數(shù)據(jù)通過同一長連接并行發(fā)送至對應的至少兩個請求方。

優(yōu)選地,依據(jù)判斷結果針對任一離線數(shù)據(jù)執(zhí)行相應的處理操作,包括以下任一項:

若判斷結果為任一離線數(shù)據(jù)被正確接收,刪除任一離線數(shù)據(jù);

若判斷結果為任一離線數(shù)據(jù)未被正確接收,重新將任一離線數(shù)據(jù)發(fā)送至請求方。

可選地,還包括:

依據(jù)預定的數(shù)據(jù)簽名生成方式,對多個離線數(shù)據(jù)進行簽名;

其中,將多個離線數(shù)據(jù)中的至少兩個并行發(fā)送至請求方,包括:

將多個離線數(shù)據(jù)中的至少兩個及各自相應的數(shù)據(jù)簽名并行發(fā)送至請求方;

其中,請求方返回的反饋信息中包括接收方根據(jù)接收到的任一離線數(shù)據(jù)生成的待驗證數(shù)據(jù)簽名;

其中,依據(jù)反饋信息判斷請求方是否已正確接收任一離線數(shù)據(jù),包括:

比對反饋信息中的待驗證數(shù)據(jù)簽名與任一離線數(shù)據(jù)對應的數(shù)據(jù)簽名是否一致來判斷請求方是否已正確接收到任一離線數(shù)據(jù)。

可選地,還包括:

將多個離線數(shù)據(jù)存儲至預定的緩存區(qū)域中,并將多個離線數(shù)據(jù)存儲至預建立的數(shù)據(jù)庫中;

其中,對多個離線數(shù)據(jù)進行簽名的步驟之后,還包括:

將與多個離線數(shù)據(jù)對應的數(shù)據(jù)簽名存儲至預定的緩存區(qū)域中;

其中,依據(jù)反饋信息判斷請求方是否已接收到正確的任一離線數(shù)據(jù)的步驟之前,包括:

從緩存區(qū)域中提取反饋信息對應的離線數(shù)據(jù)的數(shù)據(jù)簽名。

優(yōu)選地,若判斷結果為任一離線數(shù)據(jù)被正確接收,刪除任一離線數(shù)據(jù),包括:

若判斷結果為任一離線數(shù)據(jù)被正確接收,刪除預定的緩存區(qū)域中任一離線數(shù)據(jù)及相應的數(shù)據(jù)簽名的數(shù)據(jù)信息,并刪除預建立的數(shù)據(jù)庫中任一離線數(shù)據(jù)的數(shù)據(jù)記錄。

優(yōu)選地,若判斷結果為任一離線數(shù)據(jù)未被正確接收,重新將任一離線數(shù)據(jù)發(fā)送至請求方,包括:

若判斷結果為任一離線數(shù)據(jù)未被正確接收,刪除預定的緩存區(qū)域中任一離線數(shù)據(jù)及相應的數(shù)據(jù)簽名的數(shù)據(jù)信息;

在預建立的數(shù)據(jù)庫中重新獲取任一離線數(shù)據(jù)的數(shù)據(jù)記錄,并存儲至預定的緩存區(qū)域;

將重新獲取到的任一離線數(shù)據(jù)發(fā)送至請求方。

可選地,方法還包括:

依據(jù)預定的數(shù)據(jù)簽名生成方式,對重新發(fā)送的任一離線數(shù)據(jù)進行簽名;

將與任一離線數(shù)據(jù)對應的數(shù)據(jù)簽名存儲至預定的緩存區(qū)域中。

本發(fā)明的另一實施例提出了一種發(fā)送離線消息的裝置,包括:

確定模塊,用于依據(jù)接收到的數(shù)據(jù)獲取請求確定對應的多個離線數(shù)據(jù);

發(fā)送模塊,用于將多個離線數(shù)據(jù)中的至少兩個并行發(fā)送至對應的至少兩個請求方;

接收模塊,用于接收請求方返回的針對任一離線數(shù)據(jù)的反饋信息;

判斷模塊,用于依據(jù)反饋信息判斷請求方是否已正確接收到任一離線數(shù)據(jù);

執(zhí)行模塊,用于依據(jù)判斷結果針對任一離線數(shù)據(jù)執(zhí)行相應的處理操作。

優(yōu)選地,發(fā)送模塊,包括:

第一發(fā)送單元,用于將至少兩個離線數(shù)據(jù)通過同一長連接并行發(fā)送至對應的至少兩個請求方。

優(yōu)選地,執(zhí)行模塊,包括以下任一項:

若判斷結果為任一離線數(shù)據(jù)被正確接收,刪除任一離線數(shù)據(jù);

若判斷結果為任一離線數(shù)據(jù)未被正確接收,重新將任一離線數(shù)據(jù)發(fā)送至請求方。

可選地,還包括:

第一簽名模塊,用于依據(jù)預定的數(shù)據(jù)簽名生成方式,對多個離線數(shù)據(jù)進行簽名;

其中,發(fā)送模塊用于將多個離線數(shù)據(jù)中的至少兩個及各自相應的數(shù)據(jù)簽名并行發(fā)送至請求方;

其中,請求方返回的反饋信息中包括接收方根據(jù)接收到的任一離線數(shù)據(jù)生成的待驗證數(shù)據(jù)簽名;

其中,判斷模塊用于比對反饋信息中的待驗證數(shù)據(jù)簽名與任一離線數(shù)據(jù)對應的數(shù)據(jù)簽名是否一致來判斷請求方是否已正確接收到任一離線數(shù)據(jù)。

可選地,還包括:

第一存儲模塊,用于將多個離線數(shù)據(jù)存儲至預定的緩存區(qū)域中,并將多個離線數(shù)據(jù)存儲至預建立的數(shù)據(jù)庫中;

其中,對多個離線數(shù)據(jù)進行簽名之后,還包括:

第二存儲模塊,用于將與多個離線數(shù)據(jù)對應的數(shù)據(jù)簽名存儲至預定的緩存區(qū)域中;

其中,依據(jù)反饋信息判斷請求方是否已接收到正確的任一離線數(shù)據(jù)之前,包括:

提取模塊,用于從緩存區(qū)域中提取反饋信息對應的離線數(shù)據(jù)的數(shù)據(jù)簽名。

優(yōu)選地,若判斷結果為任一離線數(shù)據(jù)被正確接收,刪除任一離線數(shù)據(jù),執(zhí)行模塊包括:

第一刪除單元,用于若判斷結果為任一離線數(shù)據(jù)被正確接收,刪除預定的緩存區(qū)域中任一離線數(shù)據(jù)及相應的數(shù)據(jù)簽名的數(shù)據(jù)信息,并刪除預建立的數(shù)據(jù)庫中任一離線數(shù)據(jù)的數(shù)據(jù)記錄。

優(yōu)選地,若判斷結果為任一離線數(shù)據(jù)未被正確接收,重新將任一離線數(shù)據(jù)發(fā)送至請求方,執(zhí)行模塊包括:

第二刪除單元,用于若判斷結果為任一離線數(shù)據(jù)未被正確接收,刪除預定的緩存區(qū)域中任一離線數(shù)據(jù)及相應的數(shù)據(jù)簽名的數(shù)據(jù)信息;

獲取單元,用于在預建立的數(shù)據(jù)庫中重新獲取任一離線數(shù)據(jù)的數(shù)據(jù)記錄,并存儲至預定的緩存區(qū)域;

第二發(fā)送單元,用于將重新獲取到的任一離線數(shù)據(jù)發(fā)送至請求方。

可選地,還包括:

第二簽名模塊,用于依據(jù)預定的數(shù)據(jù)簽名生成方式,對重新發(fā)送的任一離線數(shù)據(jù)進行簽名;

第三存儲模塊,用于將與任一離線數(shù)據(jù)對應的數(shù)據(jù)簽名存儲至預定的緩存區(qū)域中。

本發(fā)明的實施例中,提出了一種發(fā)送離線消息的方案,依據(jù)接收到的數(shù)據(jù)獲取請求確定對應的多個離線數(shù)據(jù);將多個離線數(shù)據(jù)中的至少兩個并行發(fā)送至對應的至少兩個請求方,實現(xiàn)了同時將離線數(shù)據(jù)及時地發(fā)送至各請求方,避免了各請求方同時請求獲取離線數(shù)據(jù)時可能會產(chǎn)生的其中至少一個請求方延遲接收離線數(shù)據(jù)的情況;接收請求方返回的針對任一離線數(shù)據(jù)的反饋信息,依據(jù)反饋信息判斷請求方是否已正確接收到任一離線數(shù)據(jù),實現(xiàn)了準確地判斷請求方是否正確接收到任一離線數(shù)據(jù),為后續(xù)針對任一離線數(shù)據(jù)執(zhí)行相應的處理操作提供了必要的前提保障;依據(jù)判斷結果針對任一離線數(shù)據(jù)執(zhí)行相應的處理操作,實現(xiàn)了根據(jù)不同的判斷結果,對任一離線數(shù)據(jù)執(zhí)行不同的處理操作,避免了請求方在未接收到正確離線數(shù)據(jù)的情況下將離線數(shù)據(jù)進行刪除,而導致離線數(shù)據(jù)丟失的情況,進一步地,保證了請求方能夠接收到正確的離線數(shù)據(jù)。

本發(fā)明附加的方面和優(yōu)點將在下面的描述中部分給出,這些將從下面的描述中變得明顯,或通過本發(fā)明的實踐了解到。

附圖說明

本發(fā)明上述的和/或附加的方面和優(yōu)點從下面結合附圖對實施例的描述中將變得明顯和容易理解,其中:

圖1為本發(fā)明中一個實施例的發(fā)送離線消息的方法的流程示意圖;

圖2為本發(fā)明中另一實施例的發(fā)送離線消息的裝置的結構示意圖。

具體實施方式

下面詳細描述本發(fā)明的實施例,所述實施例的示例在附圖中示出,其中自始至終相同或類似的標號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實施例是示例性的,僅用于解釋本發(fā)明,而不能解釋為對本發(fā)明的限制。

本技術領域技術人員可以理解,除非特意聲明,這里使用的單數(shù)形式“一”、“一個”、“所述”和“該”也可包括復數(shù)形式。應該進一步理解的是,本發(fā)明的說明書中使用的措辭“包括”是指存在所述特征、整數(shù)、步驟、操作、元件和/或組件,但是并不排除存在或添加一個或多個其他特征、整數(shù)、步驟、操作、元件、組件和/或它們的組。應該理解,當我們稱元件被“連接”或“耦接”到另一元件時,它可以直接連接或耦接到其他元件,或者也可以存在中間元件。此外,這里使用的“連接”或“耦接”可以包括無線連接或無線耦接。這里使用的措辭“和/或”包括一個或更多個相關聯(lián)的列出項的全部或任一單元和全部組合。

本技術領域技術人員可以理解,除非另外定義,這里使用的所有術語(包括技術術語和科學術語),具有與本發(fā)明所屬領域中的普通技術人員的一般理解相同的意義。還應該理解的是,諸如通用字典中定義的那些術語,應該被理解為具有與現(xiàn)有技術的上下文中的意義一致的意義,并且除非像這里一樣被特定定義,否則不會用理想化或過于正式的含義來解釋。

圖1為本發(fā)明中一個實施例的發(fā)送離線消息的方法的流程示意圖。

本發(fā)明的實施例中,各步驟所執(zhí)行的內容概述如下:步驟S110:依據(jù)接收到的數(shù)據(jù)獲取請求確定對應的多個離線數(shù)據(jù);步驟S120:將多個離線數(shù)據(jù)中的至少兩個并行發(fā)送至對應的至少兩個請求方;步驟S130:接收請求方返回的針對任一離線數(shù)據(jù)的反饋信息;步驟S140:依據(jù)反饋信息判斷請求方是否已正確接收到任一離線數(shù)據(jù);步驟S150:依據(jù)判斷結果針對任一離線數(shù)據(jù)執(zhí)行相應的處理操作。

本發(fā)明的實施例中,提出了一種發(fā)送離線消息的方法,依據(jù)接收到的數(shù)據(jù)獲取請求確定對應的多個離線數(shù)據(jù);將多個離線數(shù)據(jù)中的至少兩個并行發(fā)送至對應的至少兩個請求方,實現(xiàn)了同時將離線數(shù)據(jù)及時地發(fā)送至各請求方,避免了各請求方同時請求獲取離線數(shù)據(jù)時可能會產(chǎn)生的其中至少一個請求方延遲接收離線數(shù)據(jù)的情況;接收請求方返回的針對任一離線數(shù)據(jù)的反饋信息,依據(jù)反饋信息判斷請求方是否已正確接收到任一離線數(shù)據(jù),實現(xiàn)了準確地判斷請求方是否正確接收到任一離線數(shù)據(jù),為后續(xù)針對任一離線數(shù)據(jù)執(zhí)行相應的處理操作提供了必要的前提保障;依據(jù)判斷結果針對任一離線數(shù)據(jù)執(zhí)行相應的處理操作,實現(xiàn)了根據(jù)不同的判斷結果,對任一離線數(shù)據(jù)執(zhí)行不同的處理操作,避免了請求方在未接收到正確離線數(shù)據(jù)的情況下將離線數(shù)據(jù)進行刪除,而導致離線數(shù)據(jù)丟失的情況,進一步地,保證了請求方能夠接收到正確的離線數(shù)據(jù)。以下針對各個步驟的具體實現(xiàn)做進一步的說明:

步驟S110:依據(jù)接收到的數(shù)據(jù)獲取請求確定對應的多個離線數(shù)據(jù)。

具體地,依據(jù)接收到的至少兩個請求方發(fā)送的針對離線數(shù)據(jù)的數(shù)據(jù)獲取請求,確定對應的多個離線數(shù)據(jù)。

例如,在終端設備A與終端設備B、終端設備A與終端設備C的數(shù)據(jù)傳輸過程中,若終端設備B和終端設備C從離線狀態(tài)變更為在線狀態(tài)后,終端設備B和終端設備C向終端設備A發(fā)送離線數(shù)據(jù)的數(shù)據(jù)獲取請求,終端設備A依據(jù)接收到的數(shù)據(jù)獲取請求確定終端設備B在離線期間對應的離線數(shù)據(jù)為Data1,并確定終端設備C在離線期間對應的離線數(shù)據(jù)為Data2。

步驟S120:將多個離線數(shù)據(jù)中的至少兩個并行發(fā)送至對應的至少兩個請求方。

例如,接上例,終端設備A將離線數(shù)據(jù)Data1和Data2分別并行發(fā)送至終端設備B和終端設備C。

步驟S130:接收請求方返回的針對任一離線數(shù)據(jù)的反饋信息。

例如,終端設備A接收終端設備B返回的針對離線數(shù)據(jù)Data1的反饋信息和終端設備C返回的針對離線數(shù)據(jù)Data2的反饋信息。

步驟S140:依據(jù)反饋信息判斷請求方是否已正確接收到任一離線數(shù)據(jù)。

例如,依據(jù)終端設備B返回的針對離線數(shù)據(jù)Data1的反饋信息,如“已接收到離線數(shù)據(jù)Data1”,終端設備A可判斷判斷終端設備B已正確接收到離線數(shù)據(jù)Data1;依據(jù)終端設備C返回的針對離線數(shù)據(jù)Data2的反饋信息,如“已接收到離線數(shù)據(jù)Data2”,終端設備A可判斷判斷終端設備C已正確接收到離線數(shù)據(jù)Data2。

需要說明的是,本領域技術人員可以了解到,發(fā)送反饋消息的方式還可以通過發(fā)送ACK(Acknowledgement,確認字符)包的形式進行消息反饋,本發(fā)明實施例中,會以特定形式的反饋消息為例說明,但并不對此進行限制。

步驟S150:依據(jù)判斷結果針對任一離線數(shù)據(jù)執(zhí)行相應的處理操作。

例如,根據(jù)終端設備B已正確接收到離線數(shù)據(jù)Data1的判斷結果,終端設備A對存儲的離線數(shù)據(jù)Data1執(zhí)行刪除操作;根據(jù)終端設備C已正確接收到離線數(shù)據(jù)Data2的判斷結果,終端設備A對存儲的離線數(shù)據(jù)Data2執(zhí)行刪除操作。

優(yōu)選地,步驟S120中將多個離線數(shù)據(jù)中的至少兩個并行發(fā)送至對應的至少兩個請求方的步驟進一步包括步驟S121;步驟S121:將至少兩個離線數(shù)據(jù)通過同一長連接并行發(fā)送至對應的至少兩個請求方。

例如,在終端設備A通過同一長連接分別與終端設備B和終端設備C進行數(shù)據(jù)傳輸,當終端設備A確定終端設備B在離線期間對應的離線數(shù)據(jù)為Data1,并確定終端設備C在離線期間對應的離線數(shù)據(jù)為Data2,隨后終端設備A通過該同一長連接,將離線數(shù)據(jù)Data1和Data2分別并行發(fā)送至終端設備B和終端設備C。

需要說明的是,本領域技術人員可以了解到,長連接,指在一個連接上可以連續(xù)發(fā)送多個數(shù)據(jù)包,在連接保持期間,如果沒有數(shù)據(jù)包發(fā)送時需要雙方發(fā)鏈路檢測包。長連接使得在一個TCP連接的基礎之上,可以發(fā)送多個HTTP請求以及接收多個HTTP響應,從而避免每一次請求都去打開一個新的連接。通過使用長連接,可以減少CPU(Central Processing Unit,中央處理器)及內存的使用、減少網(wǎng)絡的堵塞、減少請求的響應時間以及當發(fā)生錯誤時,可以在不關閉連接的情況下進行提示等。因此,長連接被廣泛的應用于向終端設備推送各種服務和消息。

優(yōu)選地,步驟S150依據(jù)判斷結果針對任一離線數(shù)據(jù)執(zhí)行相應的處理操作,包括以下任一情形:

1)若判斷結果為任一離線數(shù)據(jù)被正確接收,刪除任一離線數(shù)據(jù)。例如,根據(jù)判斷結果為離線數(shù)據(jù)Data1的已被終端設備B正確接收,終端設備A對存儲的離線數(shù)據(jù)Data1執(zhí)行刪除操作。

2)若判斷結果為任一離線數(shù)據(jù)未被正確接收,重新將任一離線數(shù)據(jù)發(fā)送至請求方。例如,根據(jù)判斷結果為離線數(shù)據(jù)Data1的未被終端設備B正確接收,終端設備A將存儲的離線數(shù)據(jù)Data1重新發(fā)送至終端設備B。

通過本實施例,能夠準確刪除無用的離線數(shù)據(jù),增加離線數(shù)據(jù)存儲區(qū)域的存儲空間,提高離線數(shù)據(jù)存儲區(qū)域的數(shù)據(jù)存儲效率,同時避免了請求方在未接收到正確離線數(shù)據(jù)的情況下將離線數(shù)據(jù)進行刪除,而導致離線數(shù)據(jù)丟失的情況,進一步地,能夠避免因大量冗余離線數(shù)據(jù)造成離線數(shù)據(jù)存儲區(qū)域存儲崩潰的情況發(fā)生。

優(yōu)選地,該方法還包括步驟S160;步驟S160:依據(jù)預定的數(shù)據(jù)簽名生成方式,對多個離線數(shù)據(jù)進行簽名。

例如,在終端設備A通過同一長連接分別與終端設備B和終端設備C進行數(shù)據(jù)傳輸,當終端設備A確定終端設備B在離線期間對應的離線數(shù)據(jù)為Data1,并確定終端設備C在離線期間對應的離線數(shù)據(jù)為Data2,終端設備A依據(jù)預定的數(shù)據(jù)簽名生成方式,如計算MD5(Message Digest Algorithm MD5,消息摘要算法第五版)的值的數(shù)據(jù)簽名方式,分別對離線數(shù)據(jù)為Data1和Data2進行MD5計算,若離線數(shù)據(jù)Data1的數(shù)據(jù)內容為“hello”,進行MD5計算簽名后的值如“bc4b2a76b9719d91”,若離線數(shù)據(jù)Data2的數(shù)據(jù)內容為“world”,進行MD5計算簽名后的值如“a0760186574b0282”。

需要說明的是,本領域技術人員可以了解到,數(shù)據(jù)簽名的方式有多種,本發(fā)明實施例中會對離線數(shù)據(jù)以特定的數(shù)據(jù)簽名方式為例說明,但并不對此進行限制;且發(fā)送數(shù)據(jù)列表的存儲方式,可以為數(shù)據(jù)表的方式,也可以為鏈表方式,本發(fā)明實施例中會以特定的發(fā)送數(shù)據(jù)列表的方式為例說明,但并不對此進行限制。

其中,步驟S120將多個離線數(shù)據(jù)中的至少兩個并行發(fā)送至請求方進一步包括步驟S121;步驟S121:將多個離線數(shù)據(jù)中的至少兩個及各自相應的數(shù)據(jù)簽名并行發(fā)送至請求方。

例如,接上例,終端設備A將離線數(shù)據(jù)Data1的數(shù)據(jù)內容“hello”及Data1的MD5數(shù)據(jù)簽名“bc4b2a76b9719d91”發(fā)送至終端設備B,同時并行將離線數(shù)據(jù)Data2的數(shù)據(jù)內容“world”及Data2的MD5數(shù)據(jù)簽名“a0760186574b0282”發(fā)送至終端設備C。

其中,請求方返回的反饋信息中包括接收方根據(jù)接收到的任一離線數(shù)據(jù)生成的待驗證數(shù)據(jù)簽名。例如,終端設備B向終端設備A返回的反饋信息中包括終端設備B根據(jù)接收到的離線數(shù)據(jù)Data1生成的待驗證數(shù)據(jù)簽名“bc4b2a76b9719d91”;終端設備C向終端設備A返回的反饋信息中包括終端設備C根據(jù)接收到的離線數(shù)據(jù)Data2生成的待驗證數(shù)據(jù)簽名“a0760186574b0282”。

其中,步驟S140依據(jù)反饋信息判斷請求方是否已正確接收任一離線數(shù)據(jù)進一步包括步驟S141;步驟S141:比對反饋信息中的待驗證數(shù)據(jù)簽名與任一離線數(shù)據(jù)對應的數(shù)據(jù)簽名是否一致來判斷請求方是否已正確接收到任一離線數(shù)據(jù)。

例如,比對得到終端設備B的反饋信息中的待驗證數(shù)據(jù)簽名“bc4b2a76b9719d91”與離線數(shù)據(jù)Data1對應的MD5數(shù)據(jù)簽名“bc4b2a76b9719d91”一致,判斷終端設備B已正確接收到離線數(shù)據(jù)Data1;比對得到終端設備C的反饋信息中的待驗證數(shù)據(jù)簽名“a0760186574b0282”與離線數(shù)據(jù)Data2對應的MD5數(shù)據(jù)簽名“a0760186574b0282”一致,判斷終端設備C已正確接收到離線數(shù)據(jù)Data2。

通過本實施例,可快速判斷請求方是否已正確接收到任一離線數(shù)據(jù),從而保證了離線數(shù)據(jù)能夠及時且準確地發(fā)送至請求方。

優(yōu)選地,該方法還包括步驟S170;步驟S170:將多個離線數(shù)據(jù)存儲至預定的緩存區(qū)域中,并將多個離線數(shù)據(jù)存儲至預建立的數(shù)據(jù)庫中。

例如,終端設備A將離線數(shù)據(jù)Data1和Data2存儲至預定的緩存區(qū)域中,如緩存數(shù)據(jù)庫CacheDB,并將離線數(shù)據(jù)Data1和Data2存儲至預建立的數(shù)據(jù)庫中,如磁盤數(shù)據(jù)庫DB。

其中,步驟S160中對多個離線數(shù)據(jù)進行簽名的步驟之后還包括步驟S180;步驟S180:將與多個離線數(shù)據(jù)對應的數(shù)據(jù)簽名存儲至預定的緩存區(qū)域中。

例如,終端設備A將離線數(shù)據(jù)Data1的數(shù)據(jù)內容“hello”及Data1的MD5數(shù)據(jù)簽名“bc4b2a76b9719d91”存儲至緩存數(shù)據(jù)庫CacheDB,并將離線數(shù)據(jù)Data2的數(shù)據(jù)內容“world”及Data2的MD5數(shù)據(jù)簽名“a0760186574b0282”存儲至緩存數(shù)據(jù)庫CacheDB。

其中,步驟S140依據(jù)反饋信息判斷請求方是否已接收到正確的任一離線數(shù)據(jù)的步驟之前包括步驟S190;步驟S190:從緩存區(qū)域中提取反饋信息對應的離線數(shù)據(jù)的數(shù)據(jù)簽名。

例如,終端設備B向終端設備A返回的反饋信息中包括終端設備B根據(jù)接收到的離線數(shù)據(jù)Data1生成的待驗證數(shù)據(jù)簽名“bc4b2a76b9719d91”,則從緩存數(shù)據(jù)庫CacheDB中提取到該反饋信息對應的離線數(shù)據(jù)Data1的數(shù)據(jù)簽名,為“bc4b2a76b9719d91”。

優(yōu)選地,步驟S150中若判斷結果為任一離線數(shù)據(jù)被正確接收,刪除任一離線數(shù)據(jù),進一步包括步驟S151;步驟S151:若判斷結果為任一離線數(shù)據(jù)被正確接收,刪除預定的緩存區(qū)域中任一離線數(shù)據(jù)及相應的數(shù)據(jù)簽名的數(shù)據(jù)信息,并刪除預建立的數(shù)據(jù)庫中任一離線數(shù)據(jù)的數(shù)據(jù)記錄。

例如,比對得到終端設備B的反饋信息中的待驗證數(shù)據(jù)簽名“bc4b2a76b9719d91”與從緩存數(shù)據(jù)庫CacheDB中提取離線數(shù)據(jù)Data1對應的數(shù)據(jù)簽名“bc4b2a76b9719d91”一致,判斷終端設備B已正確接收到離線數(shù)據(jù)Data1,根據(jù)判斷結果為離線數(shù)據(jù)Data1被正確接收,刪除緩存數(shù)據(jù)庫CacheDB中存儲的離線數(shù)據(jù)Data1及相應的數(shù)據(jù)簽名“bc4b2a76b9719d91”,并刪除磁盤數(shù)據(jù)庫DB中離線數(shù)據(jù)Data1的數(shù)據(jù)記錄。

優(yōu)選地,步驟S150中若判斷結果為任一離線數(shù)據(jù)未被正確接收,重新將任一離線數(shù)據(jù)發(fā)送至請求方,進一步包括步驟S152、步驟S153和步驟S154;步驟S152:若判斷結果為任一離線數(shù)據(jù)未被正確接收,刪除預定的緩存區(qū)域中任一離線數(shù)據(jù)及相應的數(shù)據(jù)簽名的數(shù)據(jù)信息;步驟S153:在預建立的數(shù)據(jù)庫中重新獲取任一離線數(shù)據(jù)的數(shù)據(jù)記錄,并存儲至預定的緩存區(qū)域;步驟S154:將重新獲取到的任一離線數(shù)據(jù)發(fā)送至請求方。

例如,若終端設備C向終端設備A返回的反饋信息中包括終端設備C根據(jù)接收到的離線數(shù)據(jù)Data2生成的待驗證數(shù)據(jù)簽名為“a0760186574b0283”,從緩存數(shù)據(jù)庫CacheDB中提取該反饋信息對應的離線數(shù)據(jù)Data2的數(shù)據(jù)簽名,為“a0760186574b0282”,比對得到終端設備C的反饋信息中的待驗證數(shù)據(jù)簽名“a0760186574b0283”與從緩存數(shù)據(jù)庫CacheDB中提取離線數(shù)據(jù)Data2對應的數(shù)據(jù)簽名“a0760186574b0282”不一致,判斷終端設備C未正確接收到離線數(shù)據(jù)Data2,根據(jù)判斷結果為離線數(shù)據(jù)Data2未被正確接收,刪除緩存數(shù)據(jù)庫CacheDB中離線數(shù)據(jù)Data2及相應的數(shù)據(jù)簽名“a0760186574b0282”;隨后在磁盤數(shù)據(jù)庫DB中重新獲取離線數(shù)據(jù)Data2的數(shù)據(jù)記錄,并存儲至緩存數(shù)據(jù)庫CacheDB,并將重新獲取到的離線數(shù)據(jù)Data2發(fā)送至終端設備C。

優(yōu)選地,步驟S154進一步包括步驟S1541和步驟S1542;步驟S1541:依據(jù)預定的數(shù)據(jù)簽名生成方式,對重新發(fā)送的任一離線數(shù)據(jù)進行簽名;步驟S1542:將與任一離線數(shù)據(jù)對應的數(shù)據(jù)簽名存儲至預定的緩存區(qū)域中。

例如,接上例,依據(jù)預定計算MD5值的數(shù)據(jù)簽名方式,對重新獲取到的離線數(shù)據(jù)Data2進行簽名,離線數(shù)據(jù)Data2的數(shù)據(jù)內容為“world”得到的數(shù)據(jù)簽名為“a0760186574b0282”,隨后,將與離線數(shù)據(jù)Data2對應的數(shù)據(jù)簽名“a0760186574b0282”存儲至緩存數(shù)據(jù)庫CacheDB中與離線數(shù)據(jù)Data2對應的存儲位置。

通過本實施例,當多個鏈接同時寫同一長連接時,能夠保證數(shù)據(jù)的完整性,使得請求方無法獲取到非完整的數(shù)據(jù),保證了請求方獲取到準確的離線數(shù)據(jù)。

圖2為本發(fā)明中另一實施例的發(fā)送離線消息的裝置的結構示意圖。

本發(fā)明的實施例中,各模塊所執(zhí)行的內容概述如下:確定模塊210依據(jù)接收到的數(shù)據(jù)獲取請求確定對應的多個離線數(shù)據(jù);發(fā)送模塊220將多個離線數(shù)據(jù)中的至少兩個并行發(fā)送至對應的至少兩個請求方;接收模塊230接收請求方返回的針對任一離線數(shù)據(jù)的反饋信息;判斷模塊240依據(jù)反饋信息判斷請求方是否已正確接收到任一離線數(shù)據(jù);執(zhí)行模塊250依據(jù)判斷結果針對任一離線數(shù)據(jù)執(zhí)行相應的處理操作。

本發(fā)明的實施例中,提出了一種發(fā)送離線消息的裝置,依據(jù)接收到的數(shù)據(jù)獲取請求確定對應的多個離線數(shù)據(jù);將多個離線數(shù)據(jù)中的至少兩個并行發(fā)送至對應的至少兩個請求方,實現(xiàn)了同時將離線數(shù)據(jù)及時地發(fā)送至各請求方,避免了各請求方同時請求獲取離線數(shù)據(jù)時可能會產(chǎn)生的其中至少一個請求方延遲接收離線數(shù)據(jù)的情況;接收請求方返回的針對任一離線數(shù)據(jù)的反饋信息,依據(jù)反饋信息判斷請求方是否已正確接收到任一離線數(shù)據(jù),實現(xiàn)了準確地判斷請求方是否正確接收到任一離線數(shù)據(jù),為后續(xù)針對任一離線數(shù)據(jù)執(zhí)行相應的處理操作提供了必要的前提保障;依據(jù)判斷結果針對任一離線數(shù)據(jù)執(zhí)行相應的處理操作,實現(xiàn)了根據(jù)不同的判斷結果,對任一離線數(shù)據(jù)執(zhí)行不同的處理操作,避免了請求方在未接收到正確離線數(shù)據(jù)的情況下將離線數(shù)據(jù)進行刪除,而導致離線數(shù)據(jù)丟失的情況,進一步地,保證了請求方能夠接收到正確的離線數(shù)據(jù)。以下針對各個模塊的具體實現(xiàn)做進一步的說明:

確定模塊210用于依據(jù)接收到的數(shù)據(jù)獲取請求確定對應的多個離線數(shù)據(jù)。

具體地,依據(jù)接收到的至少兩個請求方發(fā)送的針對離線數(shù)據(jù)的數(shù)據(jù)獲取請求,確定對應的多個離線數(shù)據(jù)。

例如,在終端設備A與終端設備B、終端設備A與終端設備C的數(shù)據(jù)傳輸過程中,若終端設備B和終端設備C從離線狀態(tài)變更為在線狀態(tài)后,終端設備B和終端設備C向終端設備A發(fā)送離線數(shù)據(jù)的數(shù)據(jù)獲取請求,終端設備A依據(jù)接收到的數(shù)據(jù)獲取請求確定終端設備B在離線期間對應的離線數(shù)據(jù)為Data1,并確定終端設備C在離線期間對應的離線數(shù)據(jù)為Data2。

發(fā)送模塊220用于將多個離線數(shù)據(jù)中的至少兩個并行發(fā)送至對應的至少兩個請求方。

例如,接上例,終端設備A將離線數(shù)據(jù)Data1和Data2分別并行發(fā)送至終端設備B和終端設備C。

接收模塊230用于接收請求方返回的針對任一離線數(shù)據(jù)的反饋信息。

例如,終端設備A接收終端設備B返回的針對離線數(shù)據(jù)Data1的反饋信息和終端設備C返回的針對離線數(shù)據(jù)Data2的反饋信息。

判斷模塊240用于依據(jù)反饋信息判斷請求方是否已正確接收到任一離線數(shù)據(jù)。

例如,依據(jù)終端設備B返回的針對離線數(shù)據(jù)Data1的反饋信息,如“已接收到離線數(shù)據(jù)Data1”,終端設備A可判斷判斷終端設備B已正確接收到離線數(shù)據(jù)Data1;依據(jù)終端設備C返回的針對離線數(shù)據(jù)Data2的反饋信息,如“已接收到離線數(shù)據(jù)Data2”,終端設備A可判斷判斷終端設備C已正確接收到離線數(shù)據(jù)Data2。

需要說明的是,本領域技術人員可以了解到,發(fā)送反饋消息的方式還可以通過發(fā)送ACK(Acknowledgement,確認字符)包的形式進行消息反饋,本發(fā)明實施例中,會以特定形式的反饋消息為例說明,但并不對此進行限制。

執(zhí)行模塊250用于依據(jù)判斷結果針對任一離線數(shù)據(jù)執(zhí)行相應的處理操作。

例如,根據(jù)終端設備B已正確接收到離線數(shù)據(jù)Data1的判斷結果,終端設備A對存儲的離線數(shù)據(jù)Data1執(zhí)行刪除操作;根據(jù)終端設備C已正確接收到離線數(shù)據(jù)Data2的判斷結果,終端設備A對存儲的離線數(shù)據(jù)Data2執(zhí)行刪除操作。

優(yōu)選地,發(fā)送模塊220進一步包括第一發(fā)送單元;第一發(fā)送單元用于將至少兩個離線數(shù)據(jù)通過同一長連接并行發(fā)送至對應的至少兩個請求方。

例如,在終端設備A通過同一長連接分別與終端設備B和終端設備C進行數(shù)據(jù)傳輸,當終端設備A確定終端設備B在離線期間對應的離線數(shù)據(jù)為Data1,并確定終端設備C在離線期間對應的離線數(shù)據(jù)為Data2,隨后終端設備A通過該同一長連接,將離線數(shù)據(jù)Data1和Data2分別并行發(fā)送至終端設備B和終端設備C。

需要說明的是,本領域技術人員可以了解到,長連接,指在一個連接上可以連續(xù)發(fā)送多個數(shù)據(jù)包,在連接保持期間,如果沒有數(shù)據(jù)包發(fā)送時需要雙方發(fā)鏈路檢測包。長連接使得在一個TCP連接的基礎之上,可以發(fā)送多個HTTP請求以及接收多個HTTP響應,從而避免每一次請求都去打開一個新的連接。通過使用長連接,可以減少CPU(Central Processing Unit,中央處理器)及內存的使用、減少網(wǎng)絡的堵塞、減少請求的響應時間以及當發(fā)生錯誤時,可以在不關閉連接的情況下進行提示等。因此,長連接被廣泛的應用于向終端設備推送各種服務和消息。

優(yōu)選地,執(zhí)行模塊250依據(jù)判斷結果針對任一離線數(shù)據(jù)執(zhí)行相應的處理操作,包括以下任一情形:

1)若判斷結果為任一離線數(shù)據(jù)被正確接收,刪除任一離線數(shù)據(jù)。例如,根據(jù)判斷結果為離線數(shù)據(jù)Data1的已被終端設備B正確接收,終端設備A對存儲的離線數(shù)據(jù)Data1執(zhí)行刪除操作。

2)若判斷結果為任一離線數(shù)據(jù)未被正確接收,重新將任一離線數(shù)據(jù)發(fā)送至請求方。例如,根據(jù)判斷結果為離線數(shù)據(jù)Data1的未被終端設備B正確接收,終端設備A將存儲的離線數(shù)據(jù)Data1重新發(fā)送至終端設備B。

通過本實施例,能夠準確刪除無用的離線數(shù)據(jù),增加離線數(shù)據(jù)存儲區(qū)域的存儲空間,提高離線數(shù)據(jù)存儲區(qū)域的數(shù)據(jù)存儲效率,同時避免了請求方在未接收到正確離線數(shù)據(jù)的情況下將離線數(shù)據(jù)進行刪除,而導致離線數(shù)據(jù)丟失的情況,進一步地,能夠避免因大量冗余離線數(shù)據(jù)造成離線數(shù)據(jù)存儲區(qū)域存儲崩潰的情況發(fā)生。

優(yōu)選地,該裝置還包括第一簽名模塊;第一簽名模塊依據(jù)預定的數(shù)據(jù)簽名生成方式,對多個離線數(shù)據(jù)進行簽名。

例如,在終端設備A通過同一長連接分別與終端設備B和終端設備C進行數(shù)據(jù)傳輸,當終端設備A確定終端設備B在離線期間對應的離線數(shù)據(jù)為Data1,并確定終端設備C在離線期間對應的離線數(shù)據(jù)為Data2,終端設備A依據(jù)預定的數(shù)據(jù)簽名生成方式,如計算MD5(Message Digest Algorithm MD5,消息摘要算法第五版)的值的數(shù)據(jù)簽名方式,分別對離線數(shù)據(jù)為Data1和Data2進行MD5計算,若離線數(shù)據(jù)Data1的數(shù)據(jù)內容為“hello”,進行MD5計算簽名后的值如“bc4b2a76b9719d91”,若離線數(shù)據(jù)Data2的數(shù)據(jù)內容為“world”,進行MD5計算簽名后的值如“a0760186574b0282”。

需要說明的是,本領域技術人員可以了解到,數(shù)據(jù)簽名的方式有多種,本發(fā)明實施例中會對離線數(shù)據(jù)以特定的數(shù)據(jù)簽名方式為例說明,但并不對此進行限制;且發(fā)送數(shù)據(jù)列表的存儲方式,可以為數(shù)據(jù)表的方式,也可以為鏈表方式,本發(fā)明實施例中會以特定的發(fā)送數(shù)據(jù)列表的方式為例說明,但并不對此進行限制。

其中,發(fā)送模塊220用于將多個離線數(shù)據(jù)中的至少兩個及各自相應的數(shù)據(jù)簽名并行發(fā)送至請求方。

例如,接上例,終端設備A將離線數(shù)據(jù)Data1的數(shù)據(jù)內容“hello”及Data1的MD5數(shù)據(jù)簽名“bc4b2a76b9719d91”發(fā)送至終端設備B,同時并行將離線數(shù)據(jù)Data2的數(shù)據(jù)內容“world”及Data2的MD5數(shù)據(jù)簽名“a0760186574b0282”發(fā)送至終端設備C。

其中,請求方返回的反饋信息中包括接收方根據(jù)接收到的任一離線數(shù)據(jù)生成的待驗證數(shù)據(jù)簽名。例如,終端設備B向終端設備A返回的反饋信息中包括終端設備B根據(jù)接收到的離線數(shù)據(jù)Data1生成的待驗證數(shù)據(jù)簽名“bc4b2a76b9719d91”;終端設備C向終端設備A返回的反饋信息中包括終端設備C根據(jù)接收到的離線數(shù)據(jù)Data2生成的待驗證數(shù)據(jù)簽名“a0760186574b0282”。

其中,判斷模塊240用于比對反饋信息中的待驗證數(shù)據(jù)簽名與任一離線數(shù)據(jù)對應的數(shù)據(jù)簽名是否一致來判斷請求方是否已正確接收到任一離線數(shù)據(jù)。

例如,比對得到終端設備B的反饋信息中的待驗證數(shù)據(jù)簽名“bc4b2a76b9719d91”與離線數(shù)據(jù)Data1對應的MD5數(shù)據(jù)簽名“bc4b2a76b9719d91”一致,判斷終端設備B已正確接收到離線數(shù)據(jù)Data1;比對得到終端設備C的反饋信息中的待驗證數(shù)據(jù)簽名“a0760186574b0282”與離線數(shù)據(jù)Data2對應的MD5數(shù)據(jù)簽名“a0760186574b0282”一致,判斷終端設備C已正確接收到離線數(shù)據(jù)Data2。

通過本實施例,可快速判斷請求方是否已正確接收到任一離線數(shù)據(jù),從而保證了離線數(shù)據(jù)能夠及時且準確地發(fā)送至請求方。

優(yōu)選地,該裝置還包括第一存儲模塊;第一存儲模塊用于將多個離線數(shù)據(jù)存儲至預定的緩存區(qū)域中,并將多個離線數(shù)據(jù)存儲至預建立的數(shù)據(jù)庫中。

例如,終端設備A將離線數(shù)據(jù)Data1和Data2存儲至預定的緩存區(qū)域中,如緩存數(shù)據(jù)庫CacheDB,并將離線數(shù)據(jù)Data1和Data2存儲至預建立的數(shù)據(jù)庫中,如磁盤數(shù)據(jù)庫DB。

其中,對多個離線數(shù)據(jù)進行簽名之后還包括第二存儲模塊;第二存儲模塊用于將與多個離線數(shù)據(jù)對應的數(shù)據(jù)簽名存儲至預定的緩存區(qū)域中。

例如,終端設備A將離線數(shù)據(jù)Data1的數(shù)據(jù)內容“hello”及Data1的MD5數(shù)據(jù)簽名“bc4b2a76b9719d91”存儲至緩存數(shù)據(jù)庫CacheDB,并將離線數(shù)據(jù)Data2的數(shù)據(jù)內容“world”及Data2的MD5數(shù)據(jù)簽名“a0760186574b0282”存儲至緩存數(shù)據(jù)庫CacheDB。

其中,依據(jù)反饋信息判斷請求方是否已接收到正確的任一離線數(shù)據(jù)之前包括提取模塊;提取模塊用于從緩存區(qū)域中提取反饋信息對應的離線數(shù)據(jù)的數(shù)據(jù)簽名。

例如,終端設備B向終端設備A返回的反饋信息中包括終端設備B根據(jù)接收到的離線數(shù)據(jù)Data1生成的待驗證數(shù)據(jù)簽名“bc4b2a76b9719d91”,則從緩存數(shù)據(jù)庫CacheDB中提取到該反饋信息對應的離線數(shù)據(jù)Data1的數(shù)據(jù)簽名,為“bc4b2a76b9719d91”。

優(yōu)選地,若判斷結果為任一離線數(shù)據(jù)被正確接收,刪除任一離線數(shù)據(jù),執(zhí)行模塊250進一步包括第一刪除單元;第一刪除單元用于若判斷結果為任一離線數(shù)據(jù)被正確接收,刪除預定的緩存區(qū)域中任一離線數(shù)據(jù)及相應的數(shù)據(jù)簽名的數(shù)據(jù)信息,并刪除預建立的數(shù)據(jù)庫中任一離線數(shù)據(jù)的數(shù)據(jù)記錄。

例如,比對得到終端設備B的反饋信息中的待驗證數(shù)據(jù)簽名“bc4b2a76b9719d91”與從緩存數(shù)據(jù)庫CacheDB中提取離線數(shù)據(jù)Data1對應的數(shù)據(jù)簽名“bc4b2a76b9719d91”一致,判斷終端設備B已正確接收到離線數(shù)據(jù)Data1,根據(jù)判斷結果為離線數(shù)據(jù)Data1被正確接收,刪除緩存數(shù)據(jù)庫CacheDB中存儲的離線數(shù)據(jù)Data1及相應的數(shù)據(jù)簽名“bc4b2a76b9719d91”,并刪除磁盤數(shù)據(jù)庫DB中離線數(shù)據(jù)Data1的數(shù)據(jù)記錄。

優(yōu)選地,若判斷結果為任一離線數(shù)據(jù)未被正確接收,重新將任一離線數(shù)據(jù)發(fā)送至請求方,執(zhí)行模塊250進一步包括第二刪除單元、獲取單元和第二發(fā)送單元;第二刪除單元用于若判斷結果為任一離線數(shù)據(jù)未被正確接收,刪除預定的緩存區(qū)域中任一離線數(shù)據(jù)及相應的數(shù)據(jù)簽名的數(shù)據(jù)信息;獲取單元用于在預建立的數(shù)據(jù)庫中重新獲取任一離線數(shù)據(jù)的數(shù)據(jù)記錄,并存儲至預定的緩存區(qū)域;第二發(fā)送單元用于將重新獲取到的任一離線數(shù)據(jù)發(fā)送至請求方。

例如,若終端設備C向終端設備A返回的反饋信息中包括終端設備C根據(jù)接收到的離線數(shù)據(jù)Data2生成的待驗證數(shù)據(jù)簽名為“a0760186574b0283”,從緩存數(shù)據(jù)庫CacheDB中提取該反饋信息對應的離線數(shù)據(jù)Data2的數(shù)據(jù)簽名,為“a0760186574b0282”,比對得到終端設備C的反饋信息中的待驗證數(shù)據(jù)簽名“a0760186574b0283”與從緩存數(shù)據(jù)庫CacheDB中提取離線數(shù)據(jù)Data2對應的數(shù)據(jù)簽名“a0760186574b0282”不一致,判斷終端設備C未正確接收到離線數(shù)據(jù)Data2,根據(jù)判斷結果為離線數(shù)據(jù)Data2未被正確接收,刪除緩存數(shù)據(jù)庫CacheDB中離線數(shù)據(jù)Data2及相應的數(shù)據(jù)簽名“a0760186574b0282”;隨后在磁盤數(shù)據(jù)庫DB中重新獲取離線數(shù)據(jù)Data2的數(shù)據(jù)記錄,并存儲至緩存數(shù)據(jù)庫CacheDB,并將重新獲取到的離線數(shù)據(jù)Data2發(fā)送至終端設備C。

優(yōu)選地,該裝置還包括第二簽名模塊和第三存儲模塊;第二簽名模塊用于依據(jù)預定的數(shù)據(jù)簽名生成方式,對重新發(fā)送的任一離線數(shù)據(jù)進行簽名;第三存儲模塊用于將與任一離線數(shù)據(jù)對應的數(shù)據(jù)簽名存儲至預定的緩存區(qū)域中。

例如,接上例,依據(jù)預定計算MD5值的數(shù)據(jù)簽名方式,對重新獲取到的離線數(shù)據(jù)Data2進行簽名,離線數(shù)據(jù)Data2的數(shù)據(jù)內容為“world”得到的數(shù)據(jù)簽名為“a0760186574b0282”,隨后,將與離線數(shù)據(jù)Data2對應的數(shù)據(jù)簽名“a0760186574b0282”存儲至緩存數(shù)據(jù)庫CacheDB中與離線數(shù)據(jù)Data2對應的存儲位置。

通過本實施例,當多個鏈接同時寫同一長連接時,能夠保證數(shù)據(jù)的完整性,使得請求方無法獲取到非完整的數(shù)據(jù),保證了請求方獲取到準確的離線數(shù)據(jù)。

本技術領域技術人員可以理解,本發(fā)明包括涉及用于執(zhí)行本申請中所述操作中的一項或多項的設備。這些設備可以為所需的目的而專門設計和制造,或者也可以包括通用計算機中的已知設備。這些設備具有存儲在其內的計算機程序,這些計算機程序選擇性地激活或重構。這樣的計算機程序可以被存儲在設備(例如,計算機)可讀介質中或者存儲在適于存儲電子指令并分別耦聯(lián)到總線的任何類型的介質中,所述計算機可讀介質包括但不限于任何類型的盤(包括軟盤、硬盤、光盤、CD-ROM、和磁光盤)、ROM(Read-Only Memory,只讀存儲器)、RAM(Random Access Memory,隨即存儲器)、EPROM(Erasable Programmable Read-Only Memory,可擦寫可編程只讀存儲器)、EEPROM(Electrically Erasable Programmable Read-Only Memory,電可擦可編程只讀存儲器)、閃存、磁性卡片或光線卡片。也就是,可讀介質包括由設備(例如,計算機)以能夠讀的形式存儲或傳輸信息的任何介質。

本技術領域技術人員可以理解,可以用計算機程序指令來實現(xiàn)這些結構圖和/或框圖和/或流圖中的每個框以及這些結構圖和/或框圖和/或流圖中的框的組合。本技術領域技術人員可以理解,可以將這些計算機程序指令提供給通用計算機、專業(yè)計算機或其他可編程數(shù)據(jù)處理方法的處理器來實現(xiàn),從而通過計算機或其他可編程數(shù)據(jù)處理方法的處理器來執(zhí)行本發(fā)明公開的結構圖和/或框圖和/或流圖的框或多個框中指定的方案。

本技術領域技術人員可以理解,本發(fā)明中已經(jīng)討論過的各種操作、方法、流程中的步驟、措施、方案可以被交替、更改、組合或刪除。進一步地,具有本發(fā)明中已經(jīng)討論過的各種操作、方法、流程中的其他步驟、措施、方案也可以被交替、更改、重排、分解、組合或刪除。進一步地,現(xiàn)有技術中的具有與本發(fā)明中公開的各種操作、方法、流程中的步驟、措施、方案也可以被交替、更改、重排、分解、組合或刪除。

以上所述僅是本發(fā)明的部分實施方式,應當指出,對于本技術領域的普通技術人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應視為本發(fā)明的保護范圍。

當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
霍林郭勒市| 衡阳县| 高邑县| 九龙城区| 麦盖提县| 旺苍县| 龙山县| 开化县| 淳化县| 南乐县| 冀州市| 太和县| 南岸区| 麻城市| 鄄城县| 铜山县| 滕州市| 庆元县| 岫岩| 西盟| 商城县| 新野县| 油尖旺区| 循化| 隆德县| 灵台县| 山阴县| 贡觉县| 疏附县| 成都市| 邢台县| 日喀则市| 崇文区| 新泰市| 莱芜市| 开原市| 绥中县| 永嘉县| 介休市| 安仁县| 文登市|