[發(fā)明專利]確定待處理訂單的方法和裝置在審
| 申請?zhí)枺?/td> | 201810955510.2 | 申請日: | 2018-08-21 |
| 公開(公告)號: | CN110866001A | 公開(公告)日: | 2020-03-06 |
| 發(fā)明(設(shè)計)人: | 靳海峰 | 申請(專利權(quán))人: | 北京京東尚科信息技術(shù)有限公司;北京京東世紀(jì)貿(mào)易有限公司 |
| 主分類號: | G06F16/22 | 分類號: | G06F16/22;G06F16/2455;G06Q30/06 |
| 代理公司: | 中原信達(dá)知識產(chǎn)權(quán)代理有限責(zé)任公司 11219 | 代理人: | 張一軍;張效榮 |
| 地址: | 100195 北京市海淀區(qū)杏石口路6*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 確定 處理 訂單 方法 裝置 | ||
本發(fā)明公開了一種確定待處理訂單的方法和裝置,涉及計算機(jī)技術(shù)領(lǐng)域。該方法的一具體實施方式包括:從訂單校核消息中獲取訂單標(biāo)識;根據(jù)訂單標(biāo)識計算索引值,然后從散列表中查找索引值所對應(yīng)位置的值,其中,散列表中預(yù)先保存根據(jù)訂單標(biāo)識計算得到的索引值所對應(yīng)位置的值;當(dāng)查找到的值為1且數(shù)據(jù)庫中存在該訂單時,將該訂單作為待處理訂單。該實施方式能夠?qū)崿F(xiàn)僅投入極小的資源量即可進(jìn)行大量數(shù)據(jù)的判定,減少了系統(tǒng)資源消耗,降低了消息積壓量,提升了系統(tǒng)的業(yè)務(wù)支撐能力。
技術(shù)領(lǐng)域
本發(fā)明涉及計算機(jī)技術(shù)領(lǐng)域,尤其涉及一種確定待處理訂單的方法和裝置。
背景技術(shù)
訂單系統(tǒng)作為電商體系的核心基礎(chǔ)服務(wù),其業(yè)務(wù)形態(tài)異常復(fù)雜,從訂單創(chuàng)建到發(fā)貨以及售后,橫跨多個業(yè)務(wù)生產(chǎn)部門,承載著巨大的業(yè)務(wù)流量。基于自身穩(wěn)定性與性能方面的考慮,它通常提供消息訂閱的方式供其它系統(tǒng)對接。每條訂單都有多個狀態(tài),每個狀態(tài)都由專門的項目團(tuán)隊負(fù)責(zé)校核處理,每個狀態(tài)之間的切換都會發(fā)送不同主題的消息。例如:在訂單付款之后,每條業(yè)務(wù)線會有相應(yīng)的校核團(tuán)隊對付款金額進(jìn)行校核,以判斷該訂單是否已完成付款,以便進(jìn)行配貨。
由于電商平臺包括多個業(yè)務(wù)部門,各個業(yè)務(wù)部門或各條業(yè)務(wù)線基于自身的業(yè)務(wù)需求,通常都有對接訂單消息的需求,且各個業(yè)務(wù)部門或各業(yè)務(wù)線僅需對本業(yè)務(wù)部門或本業(yè)務(wù)線的訂單消息進(jìn)行分析處理以得到業(yè)務(wù)相關(guān)數(shù)據(jù)。一般情況下,在訂單創(chuàng)建時,訂單創(chuàng)建消息提供的字段信息比較完整(例如:包括了可以標(biāo)識業(yè)務(wù)線的信息),從而可以在對訂單創(chuàng)建消息進(jìn)行處理時即根據(jù)標(biāo)識業(yè)務(wù)線的信息過濾出不同業(yè)務(wù)線的消息,并進(jìn)行分類保存,以便各個業(yè)務(wù)線處理本業(yè)務(wù)線相關(guān)的消息;而在后續(xù)進(jìn)行訂單校核時,一般訂單校核消息中僅包括了訂單號等訂單標(biāo)識信息,不會包括業(yè)務(wù)線信息,此時因訂單校核消息中未包括完整的字段信息,故而無法直接判斷一個訂單校核消息是哪個業(yè)務(wù)線的消息。
當(dāng)無法根據(jù)消息內(nèi)容判斷一個訂單是否為對應(yīng)業(yè)務(wù)線的訂單時,現(xiàn)有技術(shù)一般有以下兩種技術(shù)方案:
方案1、通過將訂單流程中的訂單創(chuàng)建消息接入、過濾后存入對應(yīng)業(yè)務(wù)線的數(shù)據(jù)庫中,并以訂單標(biāo)識ID(IDentity)字段建立索引,提供反查機(jī)制。當(dāng)后續(xù)流程中的訂單校核消息接入后,各業(yè)務(wù)線可以根據(jù)該消息中包括的訂單ID,通過反查數(shù)據(jù)庫中相應(yīng)記錄是否已存在,從而確定是否為該業(yè)務(wù)線訂單;
方案2、將訂單流程中的訂單創(chuàng)建消息接入、過濾后存入對應(yīng)業(yè)務(wù)線的數(shù)據(jù)庫,同時將訂單ID作為Key存入緩存中,提供反查機(jī)制。后續(xù)流程中的訂單校核消息接入后,可以通過反查緩存中該消息中包括的訂單ID是否已存在,從而確定是否為該業(yè)務(wù)線訂單。
在實現(xiàn)本發(fā)明過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)中至少存在如下問題:
1、現(xiàn)有的兩種方案都需要占用大量的存儲介質(zhì),耗費大量系統(tǒng)資源,嚴(yán)重影響系統(tǒng)的業(yè)務(wù)支撐能力;
2、查詢效率不夠高,無法應(yīng)付訂單消息洪流,消息積壓嚴(yán)重。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明實施例提供一種確定待處理訂單的方法和裝置,能夠?qū)崿F(xiàn)僅投入極小的資源量即可進(jìn)行大量數(shù)據(jù)的判定,減少了系統(tǒng)資源消耗,降低了消息積壓量,提升了系統(tǒng)的業(yè)務(wù)支撐能力。
為實現(xiàn)上述目的,根據(jù)本發(fā)明實施例的一個方面,提供了一種確定待處理訂單的方法。
一種確定待處理訂單的方法,包括:從訂單校核消息中獲取訂單標(biāo)識;根據(jù)所述訂單標(biāo)識計算索引值,然后從散列表中查找所述索引值所對應(yīng)位置的值,其中,所述散列表中預(yù)先保存根據(jù)訂單標(biāo)識計算得到的索引值所對應(yīng)位置的值;當(dāng)查找到的值為1且數(shù)據(jù)庫中存在所述訂單時,將所述訂單作為待處理訂單。
可選地,根據(jù)所述訂單標(biāo)識計算索引值,然后從散列表中查找所述索引值所對應(yīng)位置的值包括:使用布隆過濾器根據(jù)所述訂單標(biāo)識計算索引值,然后從所述布隆過濾器的位陣列中查找所述索引值所對應(yīng)位置的值。
該專利技術(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/201810955510.2/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





