一種應(yīng)用于云存儲系統(tǒng)的多線程nas網(wǎng)關(guān)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及云存儲技術(shù)領(lǐng)域,特別涉及一種應(yīng)用于云存儲系統(tǒng)的多線程NAS網(wǎng)關(guān)。
【背景技術(shù)】
[0002]目前,云存儲系統(tǒng)在接收到Windows客戶端發(fā)送的數(shù)據(jù)讀寫請求后,通常是采用CIFS協(xié)議(CIFS,即Common Internet File System,通用網(wǎng)絡(luò)文件系統(tǒng))來對上述數(shù)據(jù)讀寫請求進行處理的。
[0003]然而,CIFS協(xié)議是一種基于單線程的協(xié)議,當云存儲系統(tǒng)面臨Windows客戶端同時段發(fā)起的多個數(shù)據(jù)讀寫請求時,由于只能進行單線程的請求處理,從而導(dǎo)致大部分的請求需要長時間處于等待狀態(tài),既對用戶體驗造成不良影響,也限制了云存儲系統(tǒng)的整體的讀寫性能。
[0004]綜上所述可以看出,當Windows客戶端在同時段向云存儲系統(tǒng)發(fā)起多個數(shù)據(jù)讀寫請求時,如何避免大部分請求需要長時間處于等待狀態(tài)的局面是目前亟待解決的問題。
【發(fā)明內(nèi)容】
[0005]有鑒于此,本發(fā)明的目的在于提供一種應(yīng)用于云存儲系統(tǒng)的多線程NAS網(wǎng)關(guān),當Windows客戶端在同時段向云存儲系統(tǒng)發(fā)起多個數(shù)據(jù)讀寫請求時,避免了大部分請求需要長時間處于等待狀態(tài)的局面,從而提升了用戶體驗和云存儲系統(tǒng)整體的讀寫性能。其具體方案如下:
[0006]—種應(yīng)用于云存儲系統(tǒng)的多線程NAS網(wǎng)關(guān),所述云存儲系統(tǒng)包括N個文件,所述多線程NAS網(wǎng)關(guān)包括讀寫請求分發(fā)模塊、線程集和存儲隊列集;所述線程集包括N個線程,所述存儲隊列集包括N個存儲隊列,所述N個文件與所述N個存儲隊列一一對應(yīng),所述N個存儲隊列與所述N個線程一一對應(yīng),N為不小于2的正整數(shù);其中,
[0007]所述讀寫請求分發(fā)模塊,用于將針對任一所述文件的讀寫請求消息存儲至與該文件對應(yīng)的存儲隊列;
[0008]所述N個線程,用于對所述N個存儲隊列中存儲的讀寫請求消息進行并行處理;其中,任一所述線程用于從與自身對應(yīng)的存儲隊列中獲取相應(yīng)的讀寫請求消息,并根據(jù)該讀寫請求消息,對相應(yīng)的文件進行讀寫操作處理。
[0009]優(yōu)選的,所述讀寫請求分發(fā)模塊,具體用于當獲取到針對任一所述文件的讀寫請求消息后,利用哈希算法,從所述N個存儲隊列中找出與該文件對應(yīng)的存儲隊列,并將針對該文件的讀寫請求消息存儲至與該文件對應(yīng)的存儲隊列。
[0010]優(yōu)選的,所述多線程NAS網(wǎng)關(guān)還包括:
[0011]容量監(jiān)測模塊,用于對所述N個存儲隊列中每一所述存儲隊列的存儲空間的使用率進行監(jiān)測。
[0012]優(yōu)選的,所述多線程NAS網(wǎng)關(guān)還包括:
[0013]動態(tài)擴容模塊,用于與所述容量監(jiān)測模塊連接,當任一所述存儲隊列的存儲空間的使用率達到預(yù)設(shè)值后,對該存儲隊列的存儲空間進行擴容處理。
[0014]優(yōu)選的,所述動態(tài)擴容模塊,具體用于當任一所述存儲隊列的存儲空間的使用率達到預(yù)設(shè)值后,按照預(yù)設(shè)的容量擴展倍數(shù),對該存儲隊列的存儲空間進行動態(tài)擴容處理。
[0015]優(yōu)選的,所述預(yù)設(shè)的容量擴展倍數(shù)為2的K次方,K為正整數(shù)。
[0016]優(yōu)選的,所述多線程NAS網(wǎng)關(guān)還包括:
[0017]手動擴容模塊,用于為用戶提供擴容接口,當任一所述存儲隊列的存儲空間的使用率達到預(yù)設(shè)值后,獲取用戶通過所述擴容接口輸入的擴容指令,以利用該擴容指令對該存儲隊列的存儲空間進行相應(yīng)的擴容處理。
[0018]優(yōu)選的,所述擴容指令含有的參數(shù)包括擴容倍數(shù)。
[0019]優(yōu)選的,所述多線程NAS網(wǎng)關(guān)還包括:
[0020]使用率顯示模塊,用于對每一所述存儲隊列的存儲空間的使用率進行顯示。
[0021]優(yōu)選的,所述多線程NAS網(wǎng)關(guān)還包括:
[0022]預(yù)警信息生成模塊,用于與所述容量監(jiān)測模塊連接,當任一所述存儲隊列的存儲空間的使用率達到預(yù)設(shè)值后,生成相應(yīng)的預(yù)警信息。
[0023]本發(fā)明中,多線程NAS網(wǎng)關(guān)(NAS,即Network Attached Storage,網(wǎng)絡(luò)附屬存儲)包括讀寫請求分發(fā)模塊、N個線程和N個存儲隊列,云存儲系統(tǒng)中的N個文件與N個存儲隊列一一對應(yīng),N個存儲隊列與N個線程一一對應(yīng),N為不小于2的正整數(shù);其中,讀寫請求分發(fā)模塊可用于將針對任一文件的讀寫請求消息存儲至與該文件對應(yīng)的存儲隊列;上述N個線程用于對N個存儲隊列中存儲的讀寫請求消息進行并行處理;其中,任一線程用于從與自身對應(yīng)的存儲隊列中獲取相應(yīng)的讀寫請求消息,并根據(jù)該讀寫請求消息,對相應(yīng)的文件進行讀寫操作處理。可見,本發(fā)明中,云存儲系統(tǒng)的N個文件與N個存儲隊列一一對應(yīng),讀寫請求分發(fā)模塊可用于將針對任一文件的讀寫請求消息存儲至與該文件對應(yīng)的存儲隊列,而上述N個線程則可用于對N個存儲隊列中存儲的讀寫請求消息進行并行處理。這樣當Windows客戶端在同時段向云存儲系統(tǒng)發(fā)起多個數(shù)據(jù)讀寫請求時,本發(fā)明提供的多線程NAS網(wǎng)關(guān)可對上述多個數(shù)據(jù)讀寫請求進行并行處理,從而避免了大部分請求需要長時間處于等待狀態(tài)的局面,提升了用戶體驗和云存儲系統(tǒng)整體的讀寫性能。
【附圖說明】
[0024]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。
[0025]圖1為本發(fā)明實施例公開的一種多線程NAS網(wǎng)關(guān)的應(yīng)用結(jié)構(gòu)示意圖;
[0026]圖2為本發(fā)明實施例公開的一種具體的多線程NAS網(wǎng)關(guān)的應(yīng)用結(jié)構(gòu)示意圖。
【具體實施方式】
[0027]下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0028]本發(fā)明實施例公開了一種應(yīng)用于云存儲系統(tǒng)的多線程NAS網(wǎng)關(guān),云存儲系統(tǒng)包括N個文件。參見圖1所示,本實施例中,多線程NAS網(wǎng)關(guān)包括讀寫請求分發(fā)模塊11、存儲隊列集12和線程集13 ;線程集13包括N個線程,存儲隊列集12包括N個存儲隊列,N個文件與N個存儲隊列一一對應(yīng),N個存儲隊列與N個線程一一對應(yīng),N為不小于2的正整數(shù);其中,
[0029]讀寫請求分發(fā)模塊11,用于將針對任一文件的讀寫請求消息存儲至與該文件對應(yīng)的存儲隊列;
[0030]N個線程,用于對N個存儲隊列中存儲的讀寫請求消息進行并行處理;其中,任一線程用于從與自身對應(yīng)的存儲隊列中獲取相應(yīng)的讀寫請求消息,并根據(jù)該讀寫請求消息,對相應(yīng)的文件進行讀寫操作處理。
[0031]本發(fā)明實施例中,多線程NAS網(wǎng)關(guān)包括讀寫請求分發(fā)模塊、N個線程和N個存儲隊列,云存儲系統(tǒng)中的N個文件與N個存儲隊列一一對應(yīng),N個存儲隊列與N個線程一一對應(yīng),N為不小于2的正整數(shù);其中,讀寫請求分發(fā)模塊可用于將針對任一文件的讀寫請求消息存儲至與該文件對應(yīng)的存儲隊列;上述N個線程用于對N個存儲隊列中存儲的讀寫請求消息進行并行處理;其中,任一線程用于從與自身對應(yīng)的存儲隊列中獲取相應(yīng)的讀寫請求消息,并根據(jù)該讀寫請求消息,對相應(yīng)的文件進行讀寫操作處理。
[0032]可見,本