本申請涉及文件存儲,特別是涉及一種配額管理方法、配額管理裝置以及計算機存儲介質(zhì)。
背景技術(shù):
1、目前網(wǎng)盤存儲系統(tǒng)主要包括業(yè)務(wù)側(cè)文件管理服務(wù)及底層存儲服務(wù)。其中,存儲服務(wù)作為核心存儲模塊,負(fù)責(zé)實際存儲文件和數(shù)據(jù)。內(nèi)部涉及到多種存儲技術(shù),如分布式存儲、對象存儲等。業(yè)務(wù)側(cè)文件管理服務(wù)則主要負(fù)責(zé)處理用戶對文件的上傳、下載、管理、分享等操作。為更好實現(xiàn)對于存儲空間的管理,對上傳、配額更新等場景下實現(xiàn)存儲空間有效管理就變得尤為重要。
2、在一些高并發(fā)上傳及大文件上傳場景下,如上傳大文件時候,單次上傳大小僅為整個大小的一部分,基于單次上傳文件大小的配額大小校驗來判斷配額是否超出限制會存在一定的檢測漏洞隱患,同時對于高并發(fā)上傳場景下同個用戶配額控制也需要作出一定控制,否則及其容易出現(xiàn)超配額仍能上傳的問題。
技術(shù)實現(xiàn)思路
1、本申請?zhí)峁┮环N配額管理方法、配額管理裝置以及計算機存儲介質(zhì)。
2、為解決上述技術(shù)問題,本申請?zhí)岢鲆环N配額管理方法,所述配額管理方法包括:對獲得第一配額鎖的目標(biāo)網(wǎng)盤的當(dāng)前上傳請求分配第二配額鎖;基于所述第二配額鎖獲取所述目標(biāo)網(wǎng)盤的剩余配額;響應(yīng)于所述當(dāng)前上傳請求的文件大小小于等于所述剩余配額,執(zhí)行所述當(dāng)前上傳請求的文件上傳任務(wù);在所述文件上傳任務(wù)執(zhí)行完成后,對所述當(dāng)前上傳請求的第二配額鎖進(jìn)行解鎖,并重新計算目標(biāo)網(wǎng)盤的剩余配額。
3、其中,所述配額管理方法,還包括:響應(yīng)于所述當(dāng)前上傳請求的文件大小大于所述剩余配額,放棄所述當(dāng)前上傳請求并返回錯誤信息。
4、其中,所述執(zhí)行所述當(dāng)前上傳請求的文件上傳任務(wù),包括:獲取所述文件上傳任務(wù)中待上傳的文件大??;響應(yīng)于所述文件大小小于預(yù)設(shè)分片大小,采用一次上傳的小文件上傳邏輯上傳文件;響應(yīng)于所述文件大小大于等于預(yù)設(shè)分片大小,采用分片上傳的大文件上傳邏輯上傳文件
5、其中,所述配額管理方法,還包括:在一次上傳失敗或者分片上傳失敗時,將所述文件上傳任務(wù)的上傳文件記錄進(jìn)行刪除,并重新計算目標(biāo)網(wǎng)盤的剩余配額。
6、其中,所述配額管理方法,還包括:獲取所述目標(biāo)網(wǎng)盤的待更新配額和原始配額;響應(yīng)于所述待更新配額大于所述原始配額,且所述待更新配額小于等于集群最大剩余配額,按照所述待更新配額更新所述目標(biāo)網(wǎng)盤的配額。
7、其中,所述配額管理方法,還包括:響應(yīng)于所述待更新配額小于等于所述原始配額,且所述待更新配額大于所述目標(biāo)網(wǎng)盤的使用配額,按照所述待更新配額更新所述目標(biāo)網(wǎng)盤的配額。
8、其中,所述配額管理方法,還包括:響應(yīng)于所述待更新配額小于等于所述原始配額,且所述待更新配額大于所述目標(biāo)網(wǎng)盤的使用配額,判斷所述待更新配額是否大于使用溢出配額;若否,所述待更新配額校驗失敗,維持所述目標(biāo)網(wǎng)盤的當(dāng)前配額;其中,所述使用溢出配額大于所述目標(biāo)網(wǎng)盤的使用配額。
9、其中,所述響應(yīng)于所述待更新配額大于所述原始配額,且所述待更新配額小于等于集群最大剩余配額,按照所述待更新配額更新所述目標(biāo)網(wǎng)盤的配額,包括:響應(yīng)于所述待更新配額大于所述原始配額,且所述待更新配額小于等于集群最大剩余配額,判斷所述待更新配額是否大于使用溢出配額;若是,按照所述待更新配額更新所述目標(biāo)網(wǎng)盤的配額;其中,所述使用溢出配額大于所述目標(biāo)網(wǎng)盤的使用配額。
10、為解決上述技術(shù)問題,本申請?zhí)岢鲆环N配額管理裝置,所述配額管理裝置包括存儲器以及與所述存儲器耦接的處理器;其中,所述存儲器用于存儲程序數(shù)據(jù),所述處理器用于執(zhí)行所述程序數(shù)據(jù)以實現(xiàn)上述的配額管理方法。
11、為解決上述技術(shù)問題,本申請?zhí)岢鲆环N計算機存儲介質(zhì),所述計算機存儲介質(zhì)用于存儲程序數(shù)據(jù),所述程序數(shù)據(jù)在被計算機執(zhí)行時,用以實現(xiàn)上述的配額管理方法。
12、區(qū)別于現(xiàn)有技術(shù),本申請的有益效果在于:配額管理裝置對獲得第一配額鎖的目標(biāo)網(wǎng)盤的當(dāng)前上傳請求分配第二配額鎖;基于所述第二配額鎖獲取所述目標(biāo)網(wǎng)盤的剩余配額;響應(yīng)于所述當(dāng)前上傳請求的文件大小小于等于所述剩余配額,執(zhí)行所述當(dāng)前上傳請求的文件上傳任務(wù);在所述文件上傳任務(wù)執(zhí)行完成后,對所述當(dāng)前上傳請求的第二配額鎖進(jìn)行解鎖,并重新計算目標(biāo)網(wǎng)盤的剩余配額。本申請通過配額管理方法針對同個用戶上傳在配額管理中加入鎖控制機制,在并發(fā)上傳過程中實現(xiàn)配額檢測,能夠很好地解決此場景下配額攔截越界及無效等問題。
1.一種配額管理方法,其特征在于,所述配額管理方法包括:
2.根據(jù)權(quán)利要求1所述的配額管理方法,其特征在于,
3.根據(jù)權(quán)利要求1所述的配額管理方法,其特征在于,
4.根據(jù)權(quán)利要求3所述的配額管理方法,其特征在于,
5.根據(jù)權(quán)利要求1所述的配額管理方法,其特征在于,
6.根據(jù)權(quán)利要求5所述的配額管理方法,其特征在于,
7.根據(jù)權(quán)利要求6所述的配額管理方法,其特征在于,
8.根據(jù)權(quán)利要求5所述的配額管理方法,其特征在于,
9.一種配額管理裝置,其特征在于,所述配額管理裝置包括存儲器以及與所述存儲器耦接的處理器;
10.一種計算機存儲介質(zhì),其特征在于,所述計算機存儲介質(zhì)用于存儲程序數(shù)據(jù),所述程序數(shù)據(jù)在被計算機執(zhí)行時,用以實現(xiàn)如權(quán)利要求1至8任一項所述的配額管理方法。