[發(fā)明專利]一種發(fā)號(hào)方法及發(fā)號(hào)器有效
| 申請(qǐng)?zhí)枺?/td> | 201810017150.1 | 申請(qǐng)日: | 2018-01-08 |
| 公開(公告)號(hào): | CN108171862B | 公開(公告)日: | 2021-03-09 |
| 發(fā)明(設(shè)計(jì))人: | 姜曉騰 | 申請(qǐng)(專利權(quán))人: | 北京值得買科技股份有限公司 |
| 主分類號(hào): | G07C11/00 | 分類號(hào): | G07C11/00;G06F9/46;G06F9/54 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 100068 北京*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 方法 發(fā)號(hào)器 | ||
本發(fā)明實(shí)施例提供一種發(fā)號(hào)方法及發(fā)號(hào)器,該發(fā)號(hào)方法包括:收到發(fā)號(hào)請(qǐng)求后,獲取目標(biāo)業(yè)務(wù)的目標(biāo)業(yè)務(wù)唯一標(biāo)識(shí);按照預(yù)設(shè)的業(yè)務(wù)唯一標(biāo)識(shí)與信號(hào)量之間的對(duì)應(yīng)關(guān)系,確定目標(biāo)業(yè)務(wù)唯一標(biāo)識(shí)對(duì)應(yīng)的目標(biāo)信號(hào)量;判斷目標(biāo)信號(hào)量的狀態(tài)是否為可搶占狀態(tài);如果是,則搶占目標(biāo)信號(hào)量、鎖定目標(biāo)信號(hào)量為不可搶占狀態(tài),然后從預(yù)設(shè)共享內(nèi)存中獲取與目標(biāo)業(yè)務(wù)唯一標(biāo)識(shí)對(duì)應(yīng)的當(dāng)前號(hào)、將當(dāng)前號(hào)映射至目標(biāo)進(jìn)程在本地執(zhí)行數(shù)值自增1操作,并將目標(biāo)號(hào)確定為當(dāng)前號(hào)、并寫回至預(yù)設(shè)共享內(nèi)存,以及釋放所搶占的目標(biāo)信號(hào)量、更改目標(biāo)信號(hào)量為可搶占狀態(tài);如果否,則排隊(duì)等待搶占目標(biāo)信號(hào)量。應(yīng)用本發(fā)明實(shí)施例提供的方案,在保證發(fā)號(hào)器發(fā)號(hào)效率的前提下能夠獲得連續(xù)且唯一的號(hào)。
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)領(lǐng)域,特別涉及一種發(fā)號(hào)方法及發(fā)號(hào)器。
背景技術(shù)
目前,各個(gè)業(yè)務(wù)系統(tǒng)(比如訂單號(hào)系統(tǒng)、日志號(hào)系統(tǒng)等)往往需要用到發(fā)號(hào)器,對(duì)于基于多進(jìn)程方式提供服務(wù)的業(yè)務(wù)系統(tǒng)而言,往往需要借助于信號(hào)量控制當(dāng)前由哪一個(gè)進(jìn)程來獲得第三方發(fā)號(hào)器所發(fā)的號(hào)。其中,發(fā)號(hào)器發(fā)出的號(hào)為連續(xù)自然數(shù),且每發(fā)出一個(gè)號(hào)后發(fā)號(hào)器的數(shù)值自增1。對(duì)于業(yè)務(wù)系統(tǒng)在短時(shí)間內(nèi)訪問量過大的情況而言,若發(fā)號(hào)器的發(fā)號(hào)性能不能滿足需要,就容易造成業(yè)務(wù)系統(tǒng)延遲、甚至造成雪崩效應(yīng),從而使得發(fā)號(hào)器發(fā)號(hào)不準(zhǔn)確、產(chǎn)生重復(fù)數(shù)據(jù),進(jìn)一步導(dǎo)致網(wǎng)站業(yè)務(wù)出現(xiàn)問題,甚至帶來經(jīng)濟(jì)損失。
一般的,在基于多進(jìn)程方式提供服務(wù)的業(yè)務(wù)系統(tǒng)中,每一進(jìn)程需要通過調(diào)用第三方發(fā)號(hào)器來獲得發(fā)號(hào)器所發(fā)的號(hào)。顯然,系統(tǒng)內(nèi)核的性能高低決定了發(fā)號(hào)效率的快慢,當(dāng)系統(tǒng)內(nèi)核的性能低時(shí)就容易降低發(fā)號(hào)器的發(fā)號(hào)效率。因此,為保證發(fā)號(hào)器的發(fā)號(hào)效率,現(xiàn)有技術(shù)中提供了一種“微秒級(jí)發(fā)號(hào)時(shí)間+隨機(jī)數(shù)”的方式作為發(fā)號(hào)器所發(fā)出的號(hào),不再借助于第三方發(fā)號(hào)器進(jìn)程實(shí)現(xiàn)發(fā)號(hào)。
雖然現(xiàn)有技術(shù)方案無需借助第三方發(fā)號(hào)器進(jìn)程實(shí)現(xiàn)發(fā)號(hào),但是“微秒級(jí)發(fā)號(hào)時(shí)間+隨機(jī)數(shù)”的方式生成的號(hào)是不連續(xù)的;并且,進(jìn)程a和進(jìn)程b的微秒級(jí)發(fā)號(hào)時(shí)間相同、隨機(jī)數(shù)也相同的情況是完全有可能的,此時(shí)進(jìn)程a和進(jìn)程b便獲得了相同的號(hào),無法滿足這種小概率事件的發(fā)號(hào)需求。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例的目的在于提供一種發(fā)號(hào)方法及發(fā)號(hào)器,以便在保證發(fā)號(hào)器發(fā)號(hào)效率的前提下,保證發(fā)號(hào)器發(fā)號(hào)的連續(xù)性和唯一性。
為達(dá)到上述目的,本發(fā)明實(shí)施例公開了一種發(fā)號(hào)方法,應(yīng)用于提供目標(biāo)業(yè)務(wù)的任一目標(biāo)進(jìn)程,所述發(fā)號(hào)方法包括:
收到針對(duì)所述目標(biāo)進(jìn)程的發(fā)號(hào)請(qǐng)求后,獲取目標(biāo)業(yè)務(wù)對(duì)應(yīng)的目標(biāo)業(yè)務(wù)唯一標(biāo)識(shí);
按照預(yù)設(shè)的業(yè)務(wù)唯一標(biāo)識(shí)與信號(hào)量之間的對(duì)應(yīng)關(guān)系,確定目標(biāo)業(yè)務(wù)唯一標(biāo)識(shí)對(duì)應(yīng)的目標(biāo)信號(hào)量;
判斷所述目標(biāo)信號(hào)量的狀態(tài)是否為可搶占狀態(tài);
如果是,則搶占所述目標(biāo)信號(hào)量、鎖定所述目標(biāo)信號(hào)量為不可搶占狀態(tài),然后從預(yù)設(shè)共享內(nèi)存中獲取與所述目標(biāo)業(yè)務(wù)唯一標(biāo)識(shí)對(duì)應(yīng)的當(dāng)前號(hào)、將所述當(dāng)前號(hào)映射至目標(biāo)進(jìn)程在本地執(zhí)行數(shù)值自增1操作,并將自增操作后得到的目標(biāo)號(hào)確定為當(dāng)前號(hào)、并寫回至所述預(yù)設(shè)共享內(nèi)存,以及釋放所搶占的目標(biāo)信號(hào)量、更改所述目標(biāo)信號(hào)量為可搶占狀態(tài);
如果否,則排隊(duì)等待搶占所述目標(biāo)信號(hào)量。
優(yōu)選的,所述獲取目標(biāo)業(yè)務(wù)對(duì)應(yīng)的目標(biāo)業(yè)務(wù)唯一標(biāo)識(shí)的步驟,包括:
獲取目標(biāo)業(yè)務(wù)的目標(biāo)業(yè)務(wù)名;
基于循環(huán)冗余校驗(yàn)算法對(duì)所述目標(biāo)業(yè)務(wù)名進(jìn)行數(shù)字化處理,并在數(shù)字化處理之后得到所述目標(biāo)業(yè)務(wù)名對(duì)應(yīng)的目標(biāo)業(yè)務(wù)唯一標(biāo)識(shí)。
優(yōu)選的,所述目標(biāo)業(yè)務(wù)名包括網(wǎng)站域名。
優(yōu)選的,所述預(yù)設(shè)共享內(nèi)存是基于Linux操作系統(tǒng)實(shí)現(xiàn)的內(nèi)存共享。
優(yōu)選的,所述預(yù)設(shè)共享內(nèi)存中設(shè)置有針對(duì)不同業(yè)務(wù)的多個(gè)信號(hào)量。
優(yōu)選的,在所述將所述當(dāng)前號(hào)映射至目標(biāo)進(jìn)程在本地執(zhí)行數(shù)值自增1操作的步驟之后,還包括:
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京值得買科技股份有限公司,未經(jīng)北京值得買科技股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810017150.1/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 一種數(shù)據(jù)庫讀寫分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





