[發(fā)明專利]一種標(biāo)識(shí)符生成方法和裝置在審
| 申請?zhí)枺?/td> | 201810034687.9 | 申請日: | 2018-01-15 |
| 公開(公告)號(hào): | CN110109912A | 公開(公告)日: | 2019-08-09 |
| 發(fā)明(設(shè)計(jì))人: | 周文躍 | 申請(專利權(quán))人: | 北京京東尚科信息技術(shù)有限公司;北京京東世紀(jì)貿(mào)易有限公司 |
| 主分類號(hào): | G06F16/22 | 分類號(hào): | G06F16/22 |
| 代理公司: | 中原信達(dá)知識(shí)產(chǎn)權(quán)代理有限責(zé)任公司 11219 | 代理人: | 張一軍;楊曉偉 |
| 地址: | 100195 北京市海淀區(qū)杏石口路6*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 起始索引 索引 標(biāo)識(shí)符 標(biāo)識(shí)符獲取 標(biāo)識(shí)符生成 方法和裝置 計(jì)算機(jī)技術(shù)領(lǐng)域 傳輸數(shù)據(jù)量 查詢效率 程序控制 存儲(chǔ)空間 個(gè)數(shù)更新 數(shù)值形式 映射 內(nèi)存 組裝 占用 更新 全局 | ||
本發(fā)明公開了一種標(biāo)識(shí)符生成方法和裝置,涉及計(jì)算機(jī)技術(shù)領(lǐng)域。該方法的一具體實(shí)施方式包括:以標(biāo)識(shí)符獲取請求中的名稱為鍵,從內(nèi)存的映射中獲取所述鍵對(duì)應(yīng)的值;其中,所述值包括起始索引值和結(jié)束索引值;如果所述標(biāo)識(shí)符獲取請求中的索引個(gè)數(shù)小于等于所述結(jié)束索引值與所述起始索引值的差值,則根據(jù)所述索引個(gè)數(shù)更新所述起始索引值;將獲取的所述起始索引值和更新后的所述起始索引值進(jìn)行組裝,以得到標(biāo)識(shí)符。該實(shí)施方式用程序控制生成了全局唯一且自增的標(biāo)識(shí)符,便于擴(kuò)展;基于索引值生成的標(biāo)識(shí)符是數(shù)值形式,查詢效率高、占用存儲(chǔ)空間小、傳輸數(shù)據(jù)量小。
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)領(lǐng)域,尤其涉及一種標(biāo)識(shí)符生成方法和裝置。
背景技術(shù)
在互聯(lián)網(wǎng)行業(yè),有時(shí)需要并發(fā)獲取幾個(gè)系統(tǒng)之間唯一自增的標(biāo)識(shí)符(ID,Identifier)來實(shí)現(xiàn)業(yè)務(wù)需求,并且還需要統(tǒng)計(jì)各個(gè)系統(tǒng)獲取標(biāo)識(shí)符的情況。現(xiàn)有技術(shù)中可以利用數(shù)據(jù)庫的自增ID或者通用唯一識(shí)別碼(UUID,Universally Unique Identifier)來生成唯一的標(biāo)識(shí)符。使用自增ID方式生成的標(biāo)識(shí)符是自增的,使用UUID方式生成的標(biāo)識(shí)符擴(kuò)展方便。
在實(shí)現(xiàn)本發(fā)明過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)中至少存在如下問題:
(1)使用自增ID方式生成標(biāo)識(shí)符,由于不同數(shù)據(jù)庫的語法不一,數(shù)據(jù)庫遷移時(shí)需要額外處理;只有主數(shù)據(jù)庫可以生成自增ID,容易產(chǎn)生單點(diǎn)故障;依賴數(shù)據(jù)庫資源,難以擴(kuò)展;
(2)使用UUID方式生成標(biāo)識(shí)符,無序,無法保持遞增趨勢;生成的標(biāo)識(shí)符以字符串形式存儲(chǔ),查詢效率低、占用存儲(chǔ)空間大、傳輸數(shù)據(jù)量大。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明實(shí)施例提供一種標(biāo)識(shí)符生成方法和裝置,用程序控制生成了全局唯一且自增的標(biāo)識(shí)符,便于擴(kuò)展;基于索引值生成的標(biāo)識(shí)符是數(shù)值形式,查詢效率高、占用存儲(chǔ)空間小、傳輸數(shù)據(jù)量小。
實(shí)現(xiàn)上述目的,根據(jù)本發(fā)明實(shí)施例的一個(gè)方面,提供了一種標(biāo)識(shí)符生成方法。
本發(fā)明實(shí)施例的一種標(biāo)識(shí)符生成方法,包括:以標(biāo)識(shí)符獲取請求中的名稱為鍵,從內(nèi)存的映射中獲取所述鍵對(duì)應(yīng)的值;其中,所述值包括起始索引值和結(jié)束索引值;如果所述標(biāo)識(shí)符獲取請求中的索引個(gè)數(shù)小于等于所述結(jié)束索引值與所述起始索引值的差值,則根據(jù)所述索引個(gè)數(shù)更新所述起始索引值;將獲取的所述起始索引值和更新后的所述起始索引值進(jìn)行組裝,以得到標(biāo)識(shí)符。
可選地,所述從內(nèi)存的映射中獲取所述鍵對(duì)應(yīng)的值的步驟之后以及所述將獲取的所述起始索引值和更新后的所述起始索引值進(jìn)行組裝的步驟之前,還包括:如果所述索引個(gè)數(shù)大于所述差值,則從數(shù)據(jù)庫中獲取當(dāng)前索引值;根據(jù)所述索引個(gè)數(shù)更新所述起始索引值,根據(jù)內(nèi)存容量更新所述結(jié)束索引值;其中,所述內(nèi)存容量為獲取當(dāng)前索引值后所述內(nèi)存中增加的索引個(gè)數(shù)。
可選地,所述根據(jù)所述索引個(gè)數(shù)更新所述起始索引值,包括:將所述起始索引值與所述索引個(gè)數(shù)的和作為更新后的起始索引值;所述根據(jù)內(nèi)存容量更新所述結(jié)束索引值,包括:將所述結(jié)束索引值與內(nèi)存容量的和作為更新后的結(jié)束索引值。
可選地,所述從內(nèi)存的映射中獲取所述鍵對(duì)應(yīng)的值的步驟之后以及所述如果所述標(biāo)識(shí)符獲取請求中的索引個(gè)數(shù)小于等于所述結(jié)束索引值與所述起始索引值的差值的步驟之前,還包括:如果未獲取到所述鍵對(duì)應(yīng)的值,則從所述數(shù)據(jù)庫中獲取當(dāng)前索引值;將所述當(dāng)前索引值作為所述起始索引值,將所述當(dāng)前索引值與所述內(nèi)存容量的和作為所述結(jié)束索引值,存儲(chǔ)到所述映射中;從所述映射中獲取所述鍵對(duì)應(yīng)的所述起始索引值和所述結(jié)束索引值。
可選地,所述從所述數(shù)據(jù)庫中獲取當(dāng)前索引值,包括:使用Guava和Atomic從所述數(shù)據(jù)庫獲取當(dāng)前索引值。
為實(shí)現(xiàn)上述目的,根據(jù)本發(fā)明實(shí)施例的一個(gè)方面,提供了一種標(biāo)識(shí)符生成裝置。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京京東尚科信息技術(shù)有限公司;北京京東世紀(jì)貿(mào)易有限公司,未經(jīng)北京京東尚科信息技術(shù)有限公司;北京京東世紀(jì)貿(mào)易有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810034687.9/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 虛擬用戶標(biāo)識(shí)符系統(tǒng)和方法
- 規(guī)則驅(qū)動(dòng)型個(gè)域網(wǎng)ID元數(shù)據(jù)路由系統(tǒng)和網(wǎng)絡(luò)
- 一種源代碼保護(hù)的裝置及方法
- 從網(wǎng)頁中抽取對(duì)象標(biāo)識(shí)符的系統(tǒng)及方法
- 標(biāo)識(shí)符檢索方法和設(shè)備
- 使得支付能夠僅由一個(gè)商家處理
- 一種標(biāo)識(shí)符生成方法和裝置
- 構(gòu)建價(jià)值索引關(guān)系的方法、索引系統(tǒng)及索引裝置
- 生成地圖版本間對(duì)應(yīng)關(guān)系的方法、設(shè)備和計(jì)算機(jī)程序產(chǎn)品
- 水電工業(yè)數(shù)字對(duì)象的標(biāo)識(shí)符處理方法、裝置和系統(tǒng)
- 節(jié)點(diǎn)標(biāo)識(shí)符生成方法及負(fù)載均衡方法及裝置
- 打印設(shè)備及其控制方法
- 標(biāo)識(shí)符檢索方法和設(shè)備
- 一種標(biāo)識(shí)符生成方法和裝置
- 加密讀寫芯片標(biāo)識(shí)符的方法
- 一種加密讀寫芯片標(biāo)識(shí)符的方法
- 加密讀寫芯片標(biāo)識(shí)符的方法
- 構(gòu)建價(jià)值索引關(guān)系的方法、索引系統(tǒng)及索引裝置
- 預(yù)先分配內(nèi)存的方法與設(shè)備、電路、電子設(shè)備及介質(zhì)
- 獲取資源號(hào)碼標(biāo)識(shí)符的方法、裝置及存儲(chǔ)介質(zhì)





