[發(fā)明專(zhuān)利]基于數(shù)據(jù)庫(kù)系統(tǒng)的流水號(hào)生成方法有效
| 申請(qǐng)?zhí)枺?/td> | 201210219713.8 | 申請(qǐng)日: | 2012-06-29 |
| 公開(kāi)(公告)號(hào): | CN103514216A | 公開(kāi)(公告)日: | 2014-01-15 |
| 發(fā)明(設(shè)計(jì))人: | 劉賓;冀乃庚;李筑埭;傅宜生 | 申請(qǐng)(專(zhuān)利權(quán))人: | 中國(guó)銀聯(lián)股份有限公司 |
| 主分類(lèi)號(hào): | G06F17/30 | 分類(lèi)號(hào): | G06F17/30 |
| 代理公司: | 中國(guó)專(zhuān)利代理(香港)有限公司 72001 | 代理人: | 高為;王忠忠 |
| 地址: | 200135 上海*** | 國(guó)省代碼: | 上海;31 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 數(shù)據(jù)庫(kù) 系統(tǒng) 流水 生成 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明總體上涉及數(shù)據(jù)庫(kù)系統(tǒng),尤其涉及對(duì)與數(shù)據(jù)庫(kù)進(jìn)行通信的單機(jī)中的業(yè)務(wù)分配流水號(hào)的技術(shù)。
背景技術(shù)
在由數(shù)據(jù)庫(kù)和多個(gè)與該數(shù)據(jù)庫(kù)交互并獨(dú)立地處理業(yè)務(wù)的單機(jī)組成的分布式計(jì)算機(jī)系統(tǒng)中,為了區(qū)別各個(gè)單機(jī)中進(jìn)行的多個(gè)業(yè)務(wù)的目的,需要為每一筆業(yè)務(wù)分配唯一的流水號(hào),流水號(hào)的取值在一定范圍內(nèi)循環(huán)反復(fù),且在一定的時(shí)間范圍內(nèi)不重復(fù)出現(xiàn)。為保持系統(tǒng)的高可靠性以及高并發(fā)處理能力,目前的大多數(shù)這樣的分布式計(jì)算機(jī)系統(tǒng)采用分布式并行的系統(tǒng)架構(gòu),但其中的流水號(hào)分配仍需按整體統(tǒng)一的方式生成。這種情況下,現(xiàn)有方案存在以下缺點(diǎn):
1、在多機(jī)、多應(yīng)用的情況下,集中分配流水號(hào)對(duì)系統(tǒng)性能產(chǎn)生較大的不利影響;
2、缺乏在系統(tǒng)主備切換過(guò)程中保持系統(tǒng)流水號(hào)一致性的能力;
3、當(dāng)系統(tǒng)從主機(jī)或數(shù)據(jù)庫(kù)導(dǎo)致的故障中恢復(fù)后,系統(tǒng)流水號(hào)容易重復(fù)。
目前尚沒(méi)有能夠很好地解決上述問(wèn)題的方案。
發(fā)明內(nèi)容
為了至少解決上述問(wèn)題的一個(gè)方面,本發(fā)明提出了一種基于數(shù)據(jù)庫(kù)系統(tǒng)的流水號(hào)生成方法,所述流水號(hào)用于區(qū)分與所述數(shù)據(jù)庫(kù)進(jìn)行通信的多個(gè)單機(jī)中的業(yè)務(wù),所述流水號(hào)生成方法包括:在接收到訪問(wèn)所述數(shù)據(jù)庫(kù)的流水號(hào)請(qǐng)求進(jìn)程提出的流水號(hào)分配請(qǐng)求時(shí),將當(dāng)前第一個(gè)可用流水號(hào)為首的一段連續(xù)的流水號(hào)分配給流水號(hào)服務(wù)進(jìn)程;以及將分配給所述流水號(hào)服務(wù)進(jìn)程的流水號(hào)從當(dāng)前可用流水號(hào)中清除。
根據(jù)本發(fā)明的一個(gè)方面的流水號(hào)生成方法中,一次分配給所述流水號(hào)服務(wù)進(jìn)程的流水號(hào)的數(shù)目小于所述數(shù)據(jù)庫(kù)中流水號(hào)總范圍的一半除以流水號(hào)服務(wù)進(jìn)程的數(shù)目的結(jié)果。
根據(jù)本發(fā)明的一個(gè)方面的流水號(hào)生成方法中,流水號(hào)服務(wù)進(jìn)程一次申請(qǐng)得到的流水號(hào)的數(shù)目大于每秒鐘的業(yè)務(wù)峰值數(shù)除以流水號(hào)服務(wù)進(jìn)程的數(shù)目的結(jié)果。
根據(jù)本發(fā)明的一個(gè)方面的流水號(hào)生成方法中所述業(yè)務(wù)是金融交易系統(tǒng)中發(fā)生的交易。
本發(fā)明提出了一種基于數(shù)據(jù)庫(kù)系統(tǒng)的流水號(hào)生成方法,所述流水號(hào)用于區(qū)分與所述數(shù)據(jù)庫(kù)進(jìn)行通信的多個(gè)單機(jī)中的業(yè)務(wù),所述流水號(hào)生成方法包括:由流水號(hào)請(qǐng)求進(jìn)程訪問(wèn)所述數(shù)據(jù)庫(kù)并且提出流水號(hào)分配請(qǐng)求;獲得所述數(shù)據(jù)庫(kù)中當(dāng)前第一個(gè)可用流水號(hào)為首的一段連續(xù)的流水號(hào);以及在所獲得的一段連續(xù)的流水號(hào)分配完之前,只將已經(jīng)獲得的流水號(hào)依次分配給業(yè)務(wù)而不再訪問(wèn)數(shù)據(jù)庫(kù)。
根據(jù)本發(fā)明的一個(gè)方面的基于數(shù)據(jù)庫(kù)系統(tǒng)的流水號(hào)生成方法,其中,所述數(shù)據(jù)庫(kù)包括主用數(shù)據(jù)庫(kù)和備用數(shù)據(jù)庫(kù),并且在正常情況下由主用數(shù)據(jù)庫(kù)提供服務(wù),當(dāng)主用數(shù)據(jù)庫(kù)出現(xiàn)問(wèn)題并因而由備用數(shù)據(jù)庫(kù)提供服務(wù)時(shí),第一個(gè)訪問(wèn)所述備用數(shù)據(jù)庫(kù)的流水號(hào)請(qǐng)求進(jìn)程將以現(xiàn)有的流水號(hào)段為基礎(chǔ),跳過(guò)一段范圍后作為下一段流水號(hào)的起始可用值,同時(shí)更新所述備用數(shù)據(jù)庫(kù)中的當(dāng)前第一個(gè)可用流水號(hào)。
根據(jù)本發(fā)明的一個(gè)方面的流水號(hào)生成方法,其中,當(dāng)所述數(shù)據(jù)庫(kù)操作失敗時(shí),對(duì)流水號(hào)服務(wù)進(jìn)程在上一次向所述數(shù)據(jù)庫(kù)申請(qǐng)到的流水號(hào)重新使用一次。
根據(jù)本發(fā)明的一個(gè)方面的流水號(hào)生成方法,其中,所述流水號(hào)服務(wù)進(jìn)程一次分配到的流水號(hào)的數(shù)目小于所述數(shù)據(jù)庫(kù)中流水號(hào)總范圍的一半除以流水號(hào)服務(wù)進(jìn)程的數(shù)目的結(jié)果。
根據(jù)本發(fā)明的一個(gè)方面的流水號(hào)生成方法,其中所述流水號(hào)服務(wù)進(jìn)程獲得的流水號(hào)的數(shù)目大于每秒鐘的業(yè)務(wù)峰值除以流水號(hào)服務(wù)進(jìn)程的數(shù)目的結(jié)果。
通過(guò)使用本發(fā)明,可以提高系統(tǒng)的性能并且在數(shù)據(jù)庫(kù)系統(tǒng)發(fā)生問(wèn)題時(shí)仍然提供穩(wěn)定的服務(wù)。
附圖說(shuō)明
為便于理解,下面參照附圖通過(guò)非限定性例子來(lái)描述本發(fā)明的實(shí)施例。圖中:?
圖1示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的數(shù)據(jù)庫(kù)系統(tǒng)的流水號(hào)生成方法的基本流程;
圖2示出了數(shù)據(jù)庫(kù)系統(tǒng)的流水號(hào)生成方法在金融交易系統(tǒng)中的一個(gè)應(yīng)用。
具體實(shí)施方式
除非另加具體說(shuō)明,正如從以下論述中也可以認(rèn)識(shí)到的那樣,在本說(shuō)明書(shū)的通篇中,利用諸如“分配”、“獲得”、“更新”之類(lèi)術(shù)語(yǔ)的論述表示使用諸如計(jì)算機(jī)或類(lèi)似電子計(jì)算裝置之類(lèi)的特定設(shè)備的動(dòng)作或過(guò)程。在本說(shuō)明書(shū)的上下文中,計(jì)算機(jī)或者類(lèi)似電子計(jì)算裝置能夠操縱或變換信號(hào)。這些信號(hào)在計(jì)算機(jī)或類(lèi)似電子計(jì)算裝置的存儲(chǔ)器、寄存器或者其它信息存儲(chǔ)裝置、傳輸裝置或者顯示裝置中通常表示為物理電子或磁量。例如,電子計(jì)算裝置可以包括執(zhí)行一個(gè)或更多的特定功能的一個(gè)或更多的處理器。
如圖1所示,在本發(fā)明中,當(dāng)系統(tǒng)接收到來(lái)自單機(jī)的流水號(hào)服務(wù)進(jìn)程的流水號(hào)分配請(qǐng)求時(shí),系統(tǒng)會(huì)給其分配從當(dāng)前第一個(gè)可用的流水號(hào)開(kāi)始的一段連續(xù)的流水號(hào)。然后,數(shù)據(jù)庫(kù)更新其自身當(dāng)前可用的流水號(hào)。這里,對(duì)流水號(hào)的分配請(qǐng)求只是在未分配或已分配的流水號(hào)段用完時(shí)才會(huì)發(fā)出。
該專(zhuān)利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專(zhuān)利權(quán)人授權(quán)。該專(zhuān)利全部權(quán)利屬于中國(guó)銀聯(lián)股份有限公司,未經(jīng)中國(guó)銀聯(lián)股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專(zhuān)利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210219713.8/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專(zhuān)利網(wǎng)。
- 上一篇:多功能縫紉機(jī)
- 下一篇:電容傳感式斷紗自停裝置
- 同類(lèi)專(zhuān)利
- 專(zhuān)利分類(lèi)
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F17-00 特別適用于特定功能的數(shù)字計(jì)算設(shè)備或數(shù)據(jù)處理設(shè)備或數(shù)據(jù)處理方法
G06F17-10 .復(fù)雜數(shù)學(xué)運(yùn)算的
G06F17-20 .處理自然語(yǔ)言數(shù)據(jù)的
G06F17-30 .信息檢索;及其數(shù)據(jù)庫(kù)結(jié)構(gòu)
G06F17-40 .數(shù)據(jù)的獲取和記錄
G06F17-50 .計(jì)算機(jī)輔助設(shè)計(jì)
- 數(shù)據(jù)庫(kù)
- 數(shù)據(jù)庫(kù)管理系統(tǒng)及數(shù)據(jù)庫(kù)
- 數(shù)據(jù)庫(kù)構(gòu)筑裝置、數(shù)據(jù)庫(kù)檢索裝置、數(shù)據(jù)庫(kù)裝置、數(shù)據(jù)庫(kù)構(gòu)筑方法、以及數(shù)據(jù)庫(kù)檢索方法
- 數(shù)據(jù)庫(kù)和數(shù)據(jù)庫(kù)處理方法
- 數(shù)據(jù)庫(kù)系統(tǒng)、數(shù)據(jù)庫(kù)更新方法、數(shù)據(jù)庫(kù)以及數(shù)據(jù)庫(kù)更新程序
- 容器數(shù)據(jù)庫(kù)
- 數(shù)據(jù)庫(kù)同步方法及數(shù)據(jù)庫(kù)
- 一種MongoDB數(shù)據(jù)庫(kù)對(duì)象復(fù)制延遲監(jiān)控方法和裝置
- 數(shù)據(jù)分布式存儲(chǔ)方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)
- 數(shù)據(jù)庫(kù)語(yǔ)句執(zhí)行方法及裝置





