CN110609823A - 一种设置高可用临时id的方法及其系统 - Google Patents

一种设置高可用临时id的方法及其系统 Download PDF

Info

Publication number
CN110609823A
CN110609823A CN201910840307.5A CN201910840307A CN110609823A CN 110609823 A CN110609823 A CN 110609823A CN 201910840307 A CN201910840307 A CN 201910840307A CN 110609823 A CN110609823 A CN 110609823A
Authority
CN
China
Prior art keywords
temporary
cache
cache pool
ids
relational database
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201910840307.5A
Other languages
English (en)
Inventor
刘德建
郑含章
黄钟贵
范福生
詹彦安
江洪
林晓炜
李正
岳万恕
陈宏展
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujian TQ Digital Co Ltd
Original Assignee
Fujian TQ Digital Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujian TQ Digital Co Ltd filed Critical Fujian TQ Digital Co Ltd
Priority to CN201910840307.5A priority Critical patent/CN110609823A/zh
Publication of CN110609823A publication Critical patent/CN110609823A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/214Database migration support
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24552Database cache management

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种设置高可用临时ID的方法,所述方法包括请求准备步骤和用户消耗步骤;所述请求准备步骤为:准备非关系型的数据库NOSQL库存、批量生成临时ID种子入库;利用可回滚机制将临时ID迁移至非关系型的数据库NOSQL的缓存系统中;所述用户消耗步骤为:消耗缓存系统的缓存池中临时ID;如果缓存池中临时ID数量不足,则通过异步补充缓存池;本发明解决高并发时临时ID可用数量不足的问题。

Description

一种设置高可用临时ID的方法及其系统
技术领域
本发明涉及计算机领域,特别是一种设置高可用临时ID的方法及其系统。
背景技术
针对新游戏新平台会有大量的用户进行注册时,这个时候流量大,要获取一个可用的注册ID如果从主库获取容易阻塞、从库获取对及时性要求很高、不可取,放到一个缓存系统中如果库存不足的情况下也会出问题。还有一种情况是目前在各种平台访客登录、以及试玩游戏等方面为了在正式注册登录后为了更好的体验,需要临时保存其数据,在重新以注册用户的身份登录时可以无缝对接,这时候也需要一个临时高可用的临时ID作为唯一标识。目前的解决方案存在的问题是:1、高并发时会造成阻塞;2、临时ID无法保证多机器同时运行时的唯一性。
专业俗语解释:
临时ID:非正式使用的唯一标识、在转正式的可直接使用临时ID的数据。
可回滚机制:若总步骤为两步,第一步对数据进行了更改操作,第二步失败了,回滚可将状态重置为第一步之前的状态。
发明内容
为克服上述问题,本发明的目的是提供一种设置高可用临时ID的方法,解决高并发时临时ID可用数量不足的问题。
本发明采用以下方案实现:一种设置高可用临时ID的方法,所述方法包括请求准备步骤和用户消耗步骤;所述请求准备步骤为:准备非关系型的数据库NOSQL库存、批量生成临时ID种子入库;利用可回滚机制将临时ID迁移至非关系型的数据库NOSQL的缓存系统中;所述用户消耗步骤为:消耗缓存系统的缓存池中临时ID;如果缓存池中临时ID数量不足,则通过异步补充缓存池。
进一步的,所述请求准备步骤进一步具体为:准备非关系型的数据库NOSQL库存,对临时ID使用可回滚的机制进行提取和提取后的删除、保证数据的唯一性;将提取出来的多个临时ID进行批量保存到可集中管理的非关系型的数据库NOSQL中,同时分散到多个缓存池进行缓存。
进一步的,所述通过异步补充缓存池具体为:缓存池中临时ID数量不足,用户照常使用这个缓存池中的临时ID,同时将该缓存池被使用的优先级降低,通过设定的程序去自动补充该缓存池中的临时ID的库存。
另外,本发明还提供了一种设置高可用临时ID的系统,所述系统包括请求准备阶段模块和用户消耗阶段模块;所述准备阶段模块用于:准备非关系型的数据库NOSQL库存、批量生成临时ID种子入库;利用可回滚机制将临时ID迁移至非关系型的数据库NOSQL的缓存系统中;所述用户消耗阶段模块用于:消耗缓存系统的缓存池中临时ID;如果缓存池中临时ID数量不足,则通过异步补充缓存池。
进一步的,所述请求准备阶段模块进一步具体为:准备非关系型的数据库NOSQL库存,对临时ID使用可回滚的机制进行提取和提取后的删除、保证数据的唯一性;将提取出来的多个临时ID进行批量保存到可集中管理的非关系型的数据库NOSQL中,同时分散到多个缓存池进行缓存。
进一步的,所述通过异步补充缓存池具体为:缓存池中临时ID数量不足,用户照常使用这个缓存池中的临时ID,同时将该缓存池被使用的优先级降低,通过设定的程序去自动补充该缓存池中的临时ID的库存。
本发明的有益效果在于:1、加强系统对于临时用户的可控管理。2、解决高并发时临时ID可用数量不足的问题。3、确保临时ID的高可用和唯一性。
附图说明
图1是本发明的方法流程示意图。
图2是本发明的系统的结构框图。
具体实施方式
下面结合附图对本发明做进一步说明。
请参阅图1所示,本发明公开了一种设置高可用临时ID的方法方案,先是对数据库的临时ID使用可回滚的机制进行提取和提取后的删除、保证数据的唯一性。将提取出来的多个临时ID进行批量保存到一个可集中管理的非关系型的数据库NOSQL系统、同时分散到多个缓存池缓存。这样站点在拓展新机器时可以自由调用而不影响原功能。用户消费的同步验证缓存池的数量、并做一个异步的补偿机制。
其中,本发明的一种设置高可用临时ID的方法,所述方法包括请求准备步骤和用户消耗步骤;所述请求准备步骤为:准备非关系型的数据库NOSQL库存、批量生成临时ID种子入库;利用可回滚机制将临时ID迁移至非关系型的数据库NOSQL的缓存系统中;所述用户消耗步骤为:消耗缓存系统的缓存池中临时ID;如果缓存池中临时ID数量不足,则通过异步补充缓存池;一个缓存系统下可以有多个缓存池。其中,临时ID种子是通过全局唯一标识符GUID实现,即全局唯一标识符GUID(Globally Unique Identifier)是一种由算法生成的二进制长度为128位的数字标识符。这里主要是用来确定唯一键,作为辅助使用。其中,ID种子为连贯的数值,在已有注册ID的基础上累加,如已有注册ID值为100,要新生成20个临时ID,则生成ID为101,102,103…。
所述请求准备步骤进一步具体为:准备非关系型的数据库NOSQL库存,对临时ID使用可回滚的机制进行提取和提取后的删除、保证数据的唯一性;将提取出来的多个临时ID进行批量保存到可集中管理的非关系型的数据库NOSQL中,同时分散到多个缓存池进行缓存。
所述通过异步补充缓存池具体为:缓存池中临时ID数量不足,用户照常使用这个缓存池中的临时ID,同时将该缓存池被使用的优先级降低,通过设定的程序去自动补充该缓存池中的临时ID的库存。
请参阅图2所示,本发明还提供了一种设置高可用临时ID的系统,所述系统包括请求准备阶段模块和用户消耗阶段模块;所述准备阶段模块用于:准备非关系型的数据库NOSQL库存、批量生成临时ID种子入库;利用可回滚机制将临时ID迁移至非关系型的数据库NOSQL的缓存系统中;所述用户消耗阶段模块用于:消耗缓存系统的缓存池中临时ID;如果缓存池中临时ID数量不足,则通过异步补充缓存池。其中,临时ID种子是通过全局唯一标识符GUID实现,即全局唯一标识符GUID(Globally Unique Identifier)是一种由算法生成的二进制长度为128位的数字标识符。这里主要是用来确定唯一键,作为辅助使用。其中,ID种子为连贯的数值,在已有注册ID的基础上累加,如已有注册ID值为100,要新生成20个临时ID,则生成ID为101,102,103…。
所述请求准备阶段模块进一步具体为:准备非关系型的数据库NOSQL库存,对临时ID使用可回滚的机制进行提取和提取后的删除、保证数据的唯一性;将提取出来的多个临时ID进行批量保存到可集中管理的非关系型的数据库NOSQL中,同时分散到多个缓存池进行缓存。
所述通过异步补充缓存池具体为:缓存池中临时ID数量不足,用户照常使用这个缓存池中的临时ID,同时将该缓存池被使用的优先级降低,通过设定的程序去自动补充该缓存池中的临时ID的库存。
总之,本发明先是对数据库的临时ID使用可回滚的机制进行提取和提取后的删除、保证数据的唯一性。将提取出来的多个临时ID进行批量保存到一个可集中管理的非关系型的数据库NOSQL系统、同时分散到多个缓存池缓存;这样能解决高并发时临时ID可用数量不足的问题。
以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。

Claims (6)

1.一种设置高可用临时ID的方法,其特征在于:所述方法包括请求准备步骤和用户消耗步骤;所述请求准备步骤为:准备非关系型的数据库NOSQL库存、批量生成临时ID种子入库;利用可回滚机制将临时ID迁移至非关系型的数据库NOSQL的缓存系统中;所述用户消耗步骤为:消耗缓存系统的缓存池中临时ID;如果缓存池中临时ID数量不足,则通过异步补充缓存池。
2.根据权利要求1所述的一种设置高可用临时ID的方法,其特征在于:所述请求准备步骤进一步具体为:准备非关系型的数据库NOSQL库存,对临时ID使用可回滚的机制进行提取和提取后的删除、保证数据的唯一性;将提取出来的多个临时ID进行批量保存到可集中管理的非关系型的数据库NOSQL中,同时分散到多个缓存池进行缓存。
3.根据权利要求1所述的一种设置高可用临时ID的方法,其特征在于:所述通过异步补充缓存池具体为:缓存池中临时ID数量不足,用户照常使用这个缓存池中的临时ID,同时将该缓存池被使用的优先级降低,通过设定的程序去自动补充该缓存池中的临时ID的库存。
4.一种设置高可用临时ID的系统,其特征在于:所述系统包括请求准备阶段模块和用户消耗阶段模块;
所述准备阶段模块用于:准备非关系型的数据库NOSQL库存、批量生成临时ID种子入库;利用可回滚机制将临时ID迁移至非关系型的数据库NOSQL的缓存系统中;
所述用户消耗阶段模块用于:消耗缓存系统的缓存池中临时ID;如果缓存池中临时ID数量不足,则通过异步补充缓存池。
5.根据权利要求1所述的一种设置高可用临时ID的系统,其特征在于:所述请求准备阶段模块进一步具体为:准备非关系型的数据库NOSQL库存,对临时ID使用可回滚的机制进行提取和提取后的删除、保证数据的唯一性;将提取出来的多个临时ID进行批量保存到可集中管理的非关系型的数据库NOSQL中,同时分散到多个缓存池进行缓存。
6.根据权利要求1所述的一种设置高可用临时ID的系统,其特征在于:所述通过异步补充缓存池具体为:缓存池中临时ID数量不足,用户照常使用这个缓存池中的临时ID,同时将该缓存池被使用的优先级降低,通过设定的程序去自动补充该缓存池中的临时ID的库存。
CN201910840307.5A 2019-09-06 2019-09-06 一种设置高可用临时id的方法及其系统 Pending CN110609823A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910840307.5A CN110609823A (zh) 2019-09-06 2019-09-06 一种设置高可用临时id的方法及其系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910840307.5A CN110609823A (zh) 2019-09-06 2019-09-06 一种设置高可用临时id的方法及其系统

Publications (1)

Publication Number Publication Date
CN110609823A true CN110609823A (zh) 2019-12-24

Family

ID=68892468

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910840307.5A Pending CN110609823A (zh) 2019-09-06 2019-09-06 一种设置高可用临时id的方法及其系统

Country Status (1)

Country Link
CN (1) CN110609823A (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104317749A (zh) * 2014-10-31 2015-01-28 小米科技有限责任公司 信息写入方法和装置
CN106572165A (zh) * 2016-10-26 2017-04-19 宜人恒业科技发展(北京)有限公司 一种分布式全局唯一id应用方法
CN107247734A (zh) * 2017-05-05 2017-10-13 上海斐讯数据通信技术有限公司 一种分布式数据库主键生成方法及系统
CN109933609A (zh) * 2019-01-30 2019-06-25 福建天泉教育科技有限公司 一种批量生成id的方法及终端

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104317749A (zh) * 2014-10-31 2015-01-28 小米科技有限责任公司 信息写入方法和装置
CN106572165A (zh) * 2016-10-26 2017-04-19 宜人恒业科技发展(北京)有限公司 一种分布式全局唯一id应用方法
CN107247734A (zh) * 2017-05-05 2017-10-13 上海斐讯数据通信技术有限公司 一种分布式数据库主键生成方法及系统
CN109933609A (zh) * 2019-01-30 2019-06-25 福建天泉教育科技有限公司 一种批量生成id的方法及终端

Similar Documents

Publication Publication Date Title
EP3624424A1 (en) Index updating method and system, and related device
CN102955845B (zh) 数据访问方法、装置与分布式数据库系统
CN103842969B (zh) 信息处理系统
US11442961B2 (en) Active transaction list synchronization method and apparatus
CN106649378A (zh) 一种数据同步方法及装置
US20150269215A1 (en) Dependency-aware transaction batching for data replication
CN104917792B (zh) 民主自治的集群管理方法和系统
CN109766349A (zh) 任务防重方法、装置、计算机设备及存储介质
CN106021370A (zh) 内存数据库实例的管理方法及装置
CN102710763A (zh) 一种分布式缓存池化、分片及故障转移的方法及系统
US10489356B1 (en) Truncate and append database operation
CN113434482A (zh) 数据迁移方法、装置、计算机设备及存储介质
CN113553313A (zh) 一种数据迁移方法及系统、存储介质、电子设备
CN113495872A (zh) 分布式数据库中的事务处理方法及系统
CN102158533A (zh) 基于QoS的分布式web服务选择方法
CN111143323B (zh) Mpp数据库管理方法、装置及系统
CN110737432B (zh) 一种基于词根表的脚本辅助设计方法及装置
CN104573083A (zh) 一种地图缓存服务自动更新方法
CN114185991A (zh) 基于分布式数据库实现数据同步的方法及相关装置
CN110609823A (zh) 一种设置高可用临时id的方法及其系统
CN105357306A (zh) 多平台数据共享系统及其数据共享方法
CN106469224A (zh) 一种用于SaaS平台的可扩展数据模型
CN101267329A (zh) 一种会议调度中选取多点控制器的方法、系统及装置
CN113254271B (zh) 一种数据序列恢复方法、装置、设备及存储介质
CN115687359A (zh) 数据表分区方法及装置、存储介质、计算机设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination