[發明專利]資源分配方法和裝置在審
| 申請號: | 201610232468.2 | 申請日: | 2016-04-14 |
| 公開(公告)號: | CN107301091A | 公開(公告)日: | 2017-10-27 |
| 發明(設計)人: | 廖耀華 | 申請(專利權)人: | 北京京東尚科信息技術有限公司;北京京東世紀貿易有限公司 |
| 主分類號: | G06F9/50 | 分類號: | G06F9/50;G06F9/52 |
| 代理公司: | 北京英賽嘉華知識產權代理有限責任公司11204 | 代理人: | 王達佐,馬曉亞 |
| 地址: | 100080 北京市海淀區杏石口路6*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 資源 分配 方法 裝置 | ||
1.一種資源分配方法,其特征在于,所述方法包括:
獲取用戶的資源分配請求;
對所述資源分配請求進行加鎖操作;
根據所述加鎖操作的結果確定所述用戶是否具有獲取資源的權限;
若是,將所述資源分配請求作為待處理任務添加至緩存隊列中。
2.根據權利要求1所述的方法,其特征在于,所述對所述資源分配請求進行加鎖操作,包括:
基于所述資源分配請求生成鎖獲取請求;
響應于生成所述鎖獲取請求,判斷分布式鎖是否可用;
若所述分布式鎖可用,生成獲取成功的消息并將所述分布式鎖的狀態設置為不可用;以及
所述根據所述加鎖操作的結果確定所述用戶是否具有獲取資源的權限,包括:
響應于生成所述獲取成功的消息,確定所述用戶具有獲取資源的權限。
3.根據權利要求2所述的方法,其特征在于,所述方法還包括:
利用線程池為所述緩存隊列中的待處理任務分配資源。
4.根據權利要求2所述的方法,其特征在于,在將所述資源分配請求作為待處理任務添加至緩存隊列中之后,所述方法還包括:
將所述分布式鎖的狀態切換為可用。
5.根據權利要求4所述的方法,其特征在于,所述方法還包括:
檢測所述分布式鎖的不可用狀態持續的時間;
若所述分布式鎖的不可用狀態持續的時間大于預設閾值,將所述 分布式鎖的狀態切換為可用。
6.根據權利要求1-5任一項所述的方法,其特征在于,所述資源分配請求包括所述用戶的標識信息和所述用戶的資源獲取歷史記錄;
所述方法還包括:
若所述用戶具有獲取資源的權限,對所述用戶的資源獲取歷史記錄進行更新。
7.一種資源分配裝置,其特征在于,所述裝置包括:
獲取單元,用于獲取用戶的資源分配請求;
加鎖單元,用于對所述資源分配請求進行加鎖操作;
確定單元,用于根據所述加鎖操作的結果確定所述用戶是否具有獲取資源的權限;
添加單元,用于在所述用戶具有獲取資源的權限時,將所述資源分配請求作為待處理任務添加至緩存隊列中。
8.根據權利要求7所述的裝置,其特征在于,所述加鎖單元包括:
第一生成模塊,用于基于所述資源分配請求生成鎖獲取請求;
判斷模塊,用于響應于生成所述鎖獲取請求,判斷分布式鎖是否可用;
第二生成模塊,用于響應于所述分布式鎖可用,生成獲取成功的消息并將所述分布式鎖的狀態設置為不可用;
所述確定單元進一步用于響應于生成所述獲取成功的消息,確定所述用戶具有獲取資源的權限。
9.根據權利要求8所述的裝置,其特征在于,所述裝置還包括:
分配單元,用于利用線程池為所述緩存隊列中的待處理任務分配資源。
10.根據權利要求8所述的裝置,其特征在于,所述裝置還包括:
解鎖單元,用于在所述添加單元將所述資源分配請求作為待處理任務添加至緩存隊列中之后,將所述分布式鎖的狀態切換為可用。
11.根據權利要求10所述的裝置,其特征在于,所述裝置還包括處理單元,用于:
檢測所述分布式鎖的不可用狀態持續的時間;
若所述分布式鎖的不可用狀態持續的時間大于預設閾值,將所述分布式鎖的狀態切換為可用。
12.根據權利要求7-11任一項所述的裝置,其特征在于,所述資源分配請求包括所述用戶的標識信息和所述用戶的資源獲取歷史記錄;
所述裝置還包括:
更新單元,用于在所述用戶具有獲取資源的權限時,對所述用戶的資源獲取歷史記錄進行更新。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京京東尚科信息技術有限公司;北京京東世紀貿易有限公司,未經北京京東尚科信息技術有限公司;北京京東世紀貿易有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610232468.2/1.html,轉載請聲明來源鉆瓜專利網。





