System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內(nèi)的位置。 參數(shù)名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術(shù)實現(xiàn)步驟摘要】
本專利技術(shù)涉及通信,具體涉及一種密鑰文件數(shù)據(jù)傳輸并發(fā)量提升方法、設(shè)備和存儲介質(zhì)。
技術(shù)介紹
1、隨著技術(shù)的快速發(fā)展,采用加密通信的方式進行數(shù)據(jù)傳輸已經(jīng)成為常態(tài)。在加密通信的過程中,發(fā)送端與接收端會用各自的密鑰文件對傳輸?shù)臄?shù)據(jù)進行加解密操作,從而達到安全傳輸?shù)男Ч5悄壳懊荑€文件傳輸?shù)倪^程中,對于密鑰中心提供的下載密鑰文件,采用全量獨占方式,即線程不將當前密鑰文件發(fā)送完成,不會發(fā)送另一已就緒待下載的密鑰文件,也就是說當前密鑰文件發(fā)送未結(jié)束前,執(zhí)行邏輯不退出;發(fā)送結(jié)束(不論成功、失敗),執(zhí)行邏輯選擇下一個待發(fā)送的密鑰文件;依次類推,直至密鑰文件緩存隊列為空為止。
2、然而,正因為每個緩存隊列采用串行的fifo方式存取密鑰文件,使得每個密鑰文件處理完,才能繼續(xù)下一個;即使對于單個緩存隊列多線程并發(fā)而言,一個文件消息周期內(nèi)只能響應(yīng)跟線程數(shù)相同的客戶端數(shù)量,后續(xù)排隊的密鑰文件對應(yīng)的客戶端處于等待狀態(tài),線程中密鑰文件發(fā)送未結(jié)束,排隊密鑰文件對應(yīng)的客戶端則一直處于等待狀態(tài),時間一旦過長,就會出現(xiàn)通信鏈路超時,而且每個通信鏈路質(zhì)量不同,等待狀態(tài)一旦過長就卡死掉。
3、即使提前將緩存隊列里面的密鑰文件,按線程數(shù)進行分配,但由于每個線程的傳輸速度不同,導(dǎo)致密鑰文件的傳輸存在快慢之分,仍然存在部分線程傳輸完成,而部分線程中密鑰文件一直在等待傳輸,其對應(yīng)的客戶端則由于等待狀態(tài)過長出現(xiàn)卡死掉的現(xiàn)象。
技術(shù)實現(xiàn)思路
1、專利技術(shù)目的:本專利技術(shù)目的是提供一種密鑰文件數(shù)據(jù)傳輸并發(fā)量提升
2、技術(shù)方案:本專利技術(shù)一種密鑰文件數(shù)據(jù)傳輸并發(fā)量提升方法,包括以下步驟:
3、(1)第一密鑰文件至第n密鑰文件進行分片處理得到各個密鑰文件的分片文件,再將分片文件進行排序放入緩存隊列中;
4、(2)創(chuàng)建哈希表,哈希表中包括第一至第m槽位,每個槽位均包括多個用于存儲分片文件的節(jié)點;
5、(3)從緩存隊列中隨機獲取分片文件數(shù)量依次放入第一至第m槽位中,每個槽位均通過各自的傳輸線程將節(jié)點中的分片文件傳輸出去;
6、(4)每隔預(yù)設(shè)的時間計算出該預(yù)設(shè)時間內(nèi)每個傳輸線程的平均傳輸速率,根據(jù)傳輸線程的平均傳輸速率計算出每個槽位中待發(fā)送分片文件所需的傳輸時間,獲取傳輸時間最短所對應(yīng)的槽位記為新增分片文件接收槽位,并獲取其在預(yù)設(shè)的時間內(nèi)發(fā)送的分片文件數(shù)量,再從緩存隊列剩余的分片文件中按順序獲取與發(fā)送分片文件數(shù)量相同的分片文件數(shù)量放入該新增分片文件接收槽位中;
7、(5)重復(fù)執(zhí)行步驟(4)多次,直至緩存隊列中所有分片文件傳輸完成。
8、進一步地,所述將分片文件進行排序放入緩存隊列中是指:
9、首先,先分別從第一密鑰文件至第n密鑰文件的分片文件中各取l個分片文件,然后按密鑰文件的順序依次將n×l個分片文件進行排序放入緩存隊列中;再將第一密鑰文件至第n密鑰文件的分片文件中剩余的分片文件進行隨機亂序排列放入緩存隊列中。
10、進一步地,所述將分片文件進行排序放入緩存隊列中是指:將第一密鑰文件至第n密鑰文件的所有分片文件進行隨機亂序排列放入緩存隊列中。
11、進一步地,所述將分片文件進行排序放入緩存隊列中是指:
12、首先,從第一密鑰文件至第n密鑰文件的分片文件中分別取第一分片文件,然后按密鑰文件的順序依次進行排序放入緩存隊列中;從第一密鑰文件至第n密鑰文件的分片文件中分別取第二分片文件,然后按密鑰文件的順序依次進行排序放入緩存隊列中;以此類推,直至從第一密鑰文件至第n密鑰文件的分片文件中分別取第l分片文件,然后按密鑰文件的順序依次進行排序放入緩存隊列中;最后將第一密鑰文件至第n密鑰文件的分片文件中剩余的分片文件進行隨機亂序排列放入緩存隊列中。
13、進一步地,所述計算每個傳輸線程的平均傳輸速率具體過程為:
14、首先,計算出在預(yù)設(shè)的時間內(nèi)發(fā)送的分片文件的大小,利用發(fā)送的分片文件的大小除以預(yù)設(shè)的時間得到預(yù)設(shè)的時間內(nèi)傳輸線程的平均傳輸速率。
15、進一步地,所述預(yù)設(shè)的時間為1~5秒。
16、進一步地,所述待發(fā)送分片文件所需的傳輸時間具體過程為:
17、首先,計算出每個槽位中待發(fā)送分片文件的大小,利用待發(fā)送分片文件的大小除以傳輸線程的平均傳輸速率得到待發(fā)送分片文件所需的傳輸時間。
18、本專利技術(shù)還包括一種計算機設(shè)備,所述計算機設(shè)備至少包括處理器和存儲器,所述處理器用于執(zhí)行存儲器中存儲的計算機程序時實現(xiàn)如上述權(quán)利要求中任一所述密鑰文件數(shù)據(jù)傳輸并發(fā)量提升方法。
19、本專利技術(shù)還包括一種計算機可讀存儲介質(zhì),其存儲有計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)如上述權(quán)利要求中任一所述密鑰文件數(shù)據(jù)傳輸并發(fā)量提升方法。
20、本專利技術(shù)的有益效果:
21、本專利技術(shù)通過將密鑰文件進行分片,將分片文件進行排序放入緩存隊列中;再從緩存隊列中隨機獲取分片文件數(shù)量放入哈希表的槽位節(jié)點中,最后通過各自的傳輸線程將節(jié)點中的分片文件傳輸出去;在后續(xù)發(fā)送的過程中,根據(jù)傳輸線程的平均傳輸速率,計算出每個槽位中待發(fā)送分片文件所需的傳輸時間,再從緩存隊列剩余的分片文件中獲取分片文件數(shù)量放入相對應(yīng)的槽位中,直至緩存隊列中所有分片文件傳輸完成。本專利技術(shù)首先在執(zhí)行發(fā)送的過程中可響應(yīng)所有密鑰文件的下載,而且整個發(fā)送過程中,能夠根據(jù)線程的傳輸速度不同,動態(tài)調(diào)整每個線程的待傳輸密鑰文件分片文件大小,從而保證對應(yīng)的客戶端不存在等待狀態(tài)過長的情況,在整體吞吐量基本保持不變的前提下,并發(fā)量得以提升。
本文檔來自技高網(wǎng)...【技術(shù)保護點】
1.一種密鑰文件數(shù)據(jù)傳輸并發(fā)量提升方法,其特征在于,包括以下步驟:
2.根據(jù)權(quán)利要求1所述的一種密鑰文件數(shù)據(jù)傳輸并發(fā)量提升方法,其特征在于,所述將分片文件進行排序放入緩存隊列中是指:
3.根據(jù)權(quán)利要求1所述的一種密鑰文件數(shù)據(jù)傳輸并發(fā)量提升方法,其特征在于,所述將分片文件進行排序放入緩存隊列中是指:將第一密鑰文件至第N密鑰文件的所有分片文件進行隨機亂序排列放入緩存隊列中。
4.根據(jù)權(quán)利要求1所述的一種密鑰文件數(shù)據(jù)傳輸并發(fā)量提升方法,其特征在于,所述將分片文件進行排序放入緩存隊列中是指:
5.根據(jù)權(quán)利要求1所述的一種密鑰文件數(shù)據(jù)傳輸并發(fā)量提升方法,其特征在于,所述計算每個傳輸線程的平均傳輸速率具體過程為:
6.根據(jù)權(quán)利要求5所述的一種密鑰文件數(shù)據(jù)傳輸并發(fā)量提升方法,其特征在于:所述預(yù)設(shè)的時間為1~5秒。
7.根據(jù)權(quán)利要求1所述的一種密鑰文件數(shù)據(jù)傳輸并發(fā)量提升方法,其特征在于,所述待發(fā)送分片文件所需的傳輸時間具體過程為:
8.一種計算機設(shè)備,其特征在于:所述計算機設(shè)備至少包括處理器和存儲器,所述處理器用
9.一種計算機可讀存儲介質(zhì),其特征在于:其存儲有計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)如權(quán)利要求1-7中任一所述密鑰文件數(shù)據(jù)傳輸并發(fā)量提升方法。
...【技術(shù)特征摘要】
1.一種密鑰文件數(shù)據(jù)傳輸并發(fā)量提升方法,其特征在于,包括以下步驟:
2.根據(jù)權(quán)利要求1所述的一種密鑰文件數(shù)據(jù)傳輸并發(fā)量提升方法,其特征在于,所述將分片文件進行排序放入緩存隊列中是指:
3.根據(jù)權(quán)利要求1所述的一種密鑰文件數(shù)據(jù)傳輸并發(fā)量提升方法,其特征在于,所述將分片文件進行排序放入緩存隊列中是指:將第一密鑰文件至第n密鑰文件的所有分片文件進行隨機亂序排列放入緩存隊列中。
4.根據(jù)權(quán)利要求1所述的一種密鑰文件數(shù)據(jù)傳輸并發(fā)量提升方法,其特征在于,所述將分片文件進行排序放入緩存隊列中是指:
5.根據(jù)權(quán)利要求1所述的一種密鑰文件數(shù)據(jù)傳輸并發(fā)量提升方法,其特征在于,所述計算每個傳輸...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:張仕峰,張超,
申請(專利權(quán))人:矩陣時光數(shù)字科技有限公司,
類型:發(fā)明
國別省市:
還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。