CN108647763A - 基于内存数据库的二维码生命周期管理方法及计算机设备 - Google Patents
基于内存数据库的二维码生命周期管理方法及计算机设备 Download PDFInfo
- Publication number
- CN108647763A CN108647763A CN201810342523.2A CN201810342523A CN108647763A CN 108647763 A CN108647763 A CN 108647763A CN 201810342523 A CN201810342523 A CN 201810342523A CN 108647763 A CN108647763 A CN 108647763A
- Authority
- CN
- China
- Prior art keywords
- code information
- code
- quick response
- memory database
- information
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K19/00—Record carriers for use with machines and with at least a part designed to carry digital markings
- G06K19/06—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
- G06K19/06009—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
- G06K19/06037—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking multi-dimensional coding
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供一种基于内存数据库的二维码生命周期管理方法,将生成的二维码信息存储至内存数据库;设置所述二维码信息的有效属性;内存数据库根据有效属性监控所述二维码信息,若该二维码信息失效,则将所述二维码信息删除;扫描二维码,获取所述二维码的唯一标识,根据所述唯一标识从内存数据库中查询所述二维码信息,若所述二维码信息不存在,则该二维码失效;若所述二维码信息存在,则该二维码有效,成功扫码,并重新设置所述二维码信息的有效属性;本发明还提供一种计算机设备,将二维码的有效性管理剥离出来单独管理,这样在验码的时候就不需要实时计算,只需要读取数据即可。
Description
技术领域
本发明涉及一种基于内存数据库的二维码生命周期管理方法及计算机设备。
背景技术
目前二维码的有效性验证通常是在验码的时候实时从关系数据库实时查询二维码的有效期等信息并与系统当前时间比较来实现。这样会增加验码服务的复杂度,降低验码服务的并发处理性能。
发明内容
本发明要解决的技术问题,在于提供一种基于内存数据库的二维码生命周期管理方法及计算机设备,将二维码的有效性管理剥离出来单独管理,这样在验码的时候就不需要实时计算,只需要读取数据即可。
本发明之一是这样实现的:一种基于内存数据库的二维码生命周期管理方法,包括:
步骤1、将生成的二维码信息存储至内存数据库;
步骤2、设置所述二维码信息的有效属性;
步骤3、内存数据库根据有效属性监控所述二维码信息,若该二维码信息失效,则将所述二维码信息删除;
步骤4、扫描二维码,获取所述二维码的唯一标识,根据所述唯一标识从内存数据库中查询所述二维码信息,若所述二维码信息不存在,则该二维码失效;
若所述二维码信息存在,则该二维码有效,成功扫码,并重新设置所述二维码信息的有效属性。
进一步地,所述有效属性包括存活时长和/或限定次数。
进一步地,所述步骤3进一步具体为:内存数据库根据有效属性监控所述二维码信息,若该二维码信息的存活时长到期或者扫码次数达到限定次数,则将该二维码信息的状态信息标记为不合法,并将该二维码信息从内存数据库中转移至关系数据库中。
进一步地,所述步骤3进一步具体为:内存数据库根据有效属性监控所述二维码信息,若该二维码信息的存活时长到期或者扫码次数达到限定次数,则将该二维码信息的状态信息标记为不合法,并将该二维码信息转存至持久化队列,关系数据库间隔限定时间扫描持久化队列,若持久化队列中含有二维码信息,则将二维码信息转存至关系数据库中,并删除持久化队列中的二维码信息;若持久化队列中没有二维码信息,则不作处理。
本发明之二是这样实现的:一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现以下步骤:
步骤1、将生成的二维码信息存储至内存数据库;
步骤2、设置所述二维码信息的有效属性;
步骤3、内存数据库根据有效属性监控所述二维码信息,若该二维码信息失效,则将所述二维码信息删除;
步骤4、扫描二维码,获取所述二维码的唯一标识,根据所述唯一标识从内存数据库中查询所述二维码信息,若所述二维码信息不存在,则该二维码失效;
若所述二维码信息存在,则该二维码有效,成功扫码,并重新设置所述二维码信息的有效属性。
进一步地,所述有效属性包括存活时长和/或限定次数。
进一步地,所述步骤3进一步具体为:内存数据库根据有效属性监控所述二维码信息,若该二维码信息的存活时长到期或者扫码次数达到限定次数,则将该二维码信息的状态信息标记为不合法,并将该二维码信息从内存数据库中转移至关系数据库中。
进一步地,所述步骤3进一步具体为:内存数据库根据有效属性监控所述二维码信息,若该二维码信息的存活时长到期或者扫码次数达到限定次数,则将该二维码信息的状态信息标记为不合法,并将该二维码信息转存至持久化队列,关系数据库间隔限定时间扫描持久化队列,若持久化队列中含有二维码信息,则将二维码信息转存至关系数据库中,并删除持久化队列中的二维码信息;若持久化队列中没有二维码信息,则不作处理。
本发明具有如下优点:本发明将二维码的有效周期管理与使用流程解耦,独立对二维码的有效期进行统一管理,降低二维码使用流程的复杂度,并充分利用内存数据库的数据过期策略,自动将超出有效期的数据移出,可将二维码的生命周期统一管理,并有效提高二维码验码服务的并发处理性能。
附图说明
下面参照附图结合实施例对本发明作进一步的说明。
图1为本发明方法执行流程图。
图2为本发明体实施方式的系统示意图。
图3为本发明具体实施方式的生码流程图。
图4为本发明体实施方式的验码流程图。
图5为本发明体实施方式的生命周期管理流程图。
具体实施方式
如图1所示,本发明基于内存数据库的二维码生命周期管理方法,包括:
步骤1、将生成的二维码信息存储至内存数据库;
步骤2、设置所述二维码信息的有效属性,所述有效属性包括存活时长和/或限定次数;
步骤3、内存数据库根据有效属性监控所述二维码信息,若该二维码信息的存活时长到期或者扫码次数达到限定次数,则将该二维码信息的状态信息标记为不合法,并将该二维码信息转存至持久化队列,关系数据库间隔限定时间扫描持久化队列,若持久化队列中含有二维码信息,则将二维码信息转存至关系数据库中,并删除持久化队列中的二维码信息;若持久化队列中没有二维码信息,则不作处理;
步骤4、扫描二维码,获取所述二维码的唯一标识,根据所述唯一标识从内存数据库中查询所述二维码信息,若所述二维码信息不存在,则该二维码失效;
若所述二维码信息存在,则该二维码有效,成功扫码,并重新设置所述二维码信息的有效属性。
本发明计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现以下步骤:
步骤1、将生成的二维码信息存储至内存数据库;
步骤2、设置所述二维码信息的有效属性,所述有效属性包括存活时长和/或限定次数;
步骤3、内存数据库根据有效属性监控所述二维码信息,若该二维码信息的存活时长到期或者扫码次数达到限定次数,则将该二维码信息的状态信息标记为不合法,并将该二维码信息转存至持久化队列,关系数据库间隔限定时间扫描持久化队列,若持久化队列中含有二维码信息,则将二维码信息转存至关系数据库中,并删除持久化队列中的二维码信息;若持久化队列中没有二维码信息,则不作处理;
步骤4、扫描二维码,获取所述二维码的唯一标识,根据所述唯一标识从内存数据库中查询所述二维码信息,若所述二维码信息不存在,则该二维码失效;
若所述二维码信息存在,则该二维码有效,成功扫码,并重新设置所述二维码信息的有效属性。
本发明一种具体实施方式:
本发明主要提出了二维码管理系统中二维码生命周期管理与生码、验码业务流程解耦的实现方案。
如图2所示,在本发明中,二维码的有效性主要是通过使用次数和有效时长两个维度来控制,可以根据这两个维度制定不同的数据过期策略。
生码服务:负责接收前端的生码请求,生成二维码并将二维码返回客户端;二维码生成后将数据同步到二维码生命周期管理模块进行后续处理。
验码服务:负责接收前端的验码请求,并验证二维码的有效性与合法性,解析出二维码中的业务数据。
二维码生命周期管理模块:负责二维码的存储,缓存,使用次数的累加,有效时长的计算,内存数据库中数据过期事件的监听等,是本发明的核心模块。
内存数据库:在内存中缓存有效的二维码数据,并在数据过期的时候通知二维码生命周期管理模块。
待持久化队列:异步消息队列,用户缓存需要写入到关系数据库中的数据,队列数据的生产者与消费者均由生命周期管理模块实现。
关系数据库:数据的持久化存储,数据持久化是为了将二维码历史数据保存起来,做到”可追踪,可追溯”,因为在内存库中的数据都是实时业务数据,不保存历史数据,所以要加个关系数据库做永久存储。
二维码生命周期过程如下:
一、如图3所示,生码过程:
生码服务根据用户需求产生二维码,并将二维码数据同步到二维码生命周期管理模块。
二维码生命周期管理模块接收到新增二维码的请求后根据预先设置的以及用户实时选择的失效策略及有效时长等信息设置二维码的可用次数,存活时长等属性。
二维码生命周期管理模块将新增的二维码数据写入内存数据库,并设置数据存活时长。
二维码生命周期管理模块将新增的数据写入待持久化队列,等待写入关系数据库。
二、如图4所示,验码流程:
验码服务接收到用户的验码请求。
验码服务根据二维码唯一识别码从二维码生命周期管理模块请求二维码数据。
二维码生命周期管理模块从内存数据库查询并返回符合条件的二维码数据。因为失效的二维码数据已经自动淘汰,所以只要根据二维码唯一标识查询队列中有的数据即可。
验码模块验证二维码的数据合法性。如果验证不通过则跳转到步骤5,否则到步骤6。
不合法的二维码,设置二维码的有效期为0,并通知生命周期管理模块更新数据,跳转到步骤7。
合法的二维码验证通过之后根据其失效策略重置二维码的存活时长,或者累加二维码的使用次数。并通知生命周期管理模块更新数据。
生命周期管理模块更新数据。
三、如图5所示,生命周期管理流程:
生命周期管理模块有3个主要工作进程。其中进程1由内存数据库提供。
进程1:负责监控内存库中的过期数据,当有过期数据产生时,发起事件通知进程2。
进程2:负责监听进程1发起的过期数据通知事件,并把过期数据写入待持久化队列中。
进程3:负责监听数据持久化队列,消费队列中的数据,把数据持久化到关系数据库。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
Claims (8)
1.一种基于内存数据库的二维码生命周期管理方法,其特征在于:包括:
步骤1、将生成的二维码信息存储至内存数据库;
步骤2、设置所述二维码信息的有效属性;
步骤3、内存数据库根据有效属性监控所述二维码信息,若该二维码信息失效,则将所述二维码信息删除;
步骤4、扫描二维码,获取所述二维码的唯一标识,根据所述唯一标识从内存数据库中查询所述二维码信息,若所述二维码信息不存在,则该二维码失效;
若所述二维码信息存在,则该二维码有效,成功扫码,并重新设置所述二维码信息的有效属性。
2.根据权利要求1所述的一种基于内存数据库的二维码生命周期管理方法,其特征在于:所述有效属性包括存活时长和/或限定次数。
3.根据权利要求2所述的一种基于内存数据库的二维码生命周期管理方法,其特征在于:所述步骤3进一步具体为:内存数据库根据有效属性监控所述二维码信息,若该二维码信息的存活时长到期或者扫码次数达到限定次数,则将该二维码信息的状态信息标记为不合法,并将该二维码信息从内存数据库中转移至关系数据库中。
4.根据权利要求3所述的一种基于内存数据库的二维码生命周期管理方法,其特征在于:所述步骤3进一步具体为:内存数据库根据有效属性监控所述二维码信息,若该二维码信息的存活时长到期或者扫码次数达到限定次数,则将该二维码信息的状态信息标记为不合法,并将该二维码信息转存至持久化队列,关系数据库间隔限定时间扫描持久化队列,若持久化队列中含有二维码信息,则将二维码信息转存至关系数据库中,并删除持久化队列中的二维码信息;若持久化队列中没有二维码信息,则不作处理。
5.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于:所述处理器执行所述程序时实现以下步骤:
步骤1、将生成的二维码信息存储至内存数据库;
步骤2、设置所述二维码信息的有效属性;
步骤3、内存数据库根据有效属性监控所述二维码信息,若该二维码信息失效,则将所述二维码信息删除;
步骤4、扫描二维码,获取所述二维码的唯一标识,根据所述唯一标识从内存数据库中查询所述二维码信息,若所述二维码信息不存在,则该二维码失效;
若所述二维码信息存在,则该二维码有效,成功扫码,并重新设置所述二维码信息的有效属性。
6.根据权利要求5所述的一种计算机设备,其特征在于:所述有效属性包括存活时长和/或限定次数。
7.根据权利要求6所述的一种计算机设备,其特征在于:所述步骤3进一步具体为:内存数据库根据有效属性监控所述二维码信息,若该二维码信息的存活时长到期或者扫码次数达到限定次数,则将该二维码信息的状态信息标记为不合法,并将该二维码信息从内存数据库中转移至关系数据库中。
8.根据权利要求7所述的一种计算机设备,其特征在于:所述步骤3进一步具体为:内存数据库根据有效属性监控所述二维码信息,若该二维码信息的存活时长到期或者扫码次数达到限定次数,则将该二维码信息的状态信息标记为不合法,并将该二维码信息转存至持久化队列,关系数据库间隔限定时间扫描持久化队列,若持久化队列中含有二维码信息,则将二维码信息转存至关系数据库中,并删除持久化队列中的二维码信息;若持久化队列中没有二维码信息,则不作处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810342523.2A CN108647763A (zh) | 2018-04-17 | 2018-04-17 | 基于内存数据库的二维码生命周期管理方法及计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810342523.2A CN108647763A (zh) | 2018-04-17 | 2018-04-17 | 基于内存数据库的二维码生命周期管理方法及计算机设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108647763A true CN108647763A (zh) | 2018-10-12 |
Family
ID=63746245
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810342523.2A Pending CN108647763A (zh) | 2018-04-17 | 2018-04-17 | 基于内存数据库的二维码生命周期管理方法及计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108647763A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111325881A (zh) * | 2020-02-26 | 2020-06-23 | 北京安恒利通科技股份公司 | 一种锁具及其二维码控制方法 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102622631A (zh) * | 2012-02-28 | 2012-08-01 | 深圳润鸿鑫数码技术有限公司 | 一种用于防伪设备的防伪检验装置及防伪方法 |
CN102867165A (zh) * | 2012-09-19 | 2013-01-09 | 腾讯科技(深圳)有限公司 | 二维码信息提供和存储方法、及相关装置 |
CN103034832A (zh) * | 2011-10-10 | 2013-04-10 | 中国移动通信集团公司 | 一种条码的处理方法以及装置 |
CN103218721A (zh) * | 2013-03-29 | 2013-07-24 | 刘子超 | 一种卷烟零售终端专卖防伪控制方法及系统 |
CN103530781A (zh) * | 2013-10-24 | 2014-01-22 | 上海圣渠实业有限公司 | 基于二维码的商品防伪方法 |
CN104063935A (zh) * | 2014-06-30 | 2014-09-24 | 深圳市同创新佳科技有限公司 | 一种基于电子钥匙管理服务器的酒店客房管理方法及系统 |
CN105898747A (zh) * | 2016-05-13 | 2016-08-24 | 中科创达软件科技(深圳)有限公司 | 一种无线网络安全认证、接入方法及认证、接入装置 |
CN106130977A (zh) * | 2016-06-27 | 2016-11-16 | 上海斐讯数据通信技术有限公司 | 一种无线路由器的连接控制方法及无线路由器 |
US20170154069A1 (en) * | 2008-01-21 | 2017-06-01 | International Business Machines Corporation | Verifying an attribute in records for procurement application |
-
2018
- 2018-04-17 CN CN201810342523.2A patent/CN108647763A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170154069A1 (en) * | 2008-01-21 | 2017-06-01 | International Business Machines Corporation | Verifying an attribute in records for procurement application |
CN103034832A (zh) * | 2011-10-10 | 2013-04-10 | 中国移动通信集团公司 | 一种条码的处理方法以及装置 |
CN102622631A (zh) * | 2012-02-28 | 2012-08-01 | 深圳润鸿鑫数码技术有限公司 | 一种用于防伪设备的防伪检验装置及防伪方法 |
CN102867165A (zh) * | 2012-09-19 | 2013-01-09 | 腾讯科技(深圳)有限公司 | 二维码信息提供和存储方法、及相关装置 |
CN103218721A (zh) * | 2013-03-29 | 2013-07-24 | 刘子超 | 一种卷烟零售终端专卖防伪控制方法及系统 |
CN103530781A (zh) * | 2013-10-24 | 2014-01-22 | 上海圣渠实业有限公司 | 基于二维码的商品防伪方法 |
CN104063935A (zh) * | 2014-06-30 | 2014-09-24 | 深圳市同创新佳科技有限公司 | 一种基于电子钥匙管理服务器的酒店客房管理方法及系统 |
CN105898747A (zh) * | 2016-05-13 | 2016-08-24 | 中科创达软件科技(深圳)有限公司 | 一种无线网络安全认证、接入方法及认证、接入装置 |
CN106130977A (zh) * | 2016-06-27 | 2016-11-16 | 上海斐讯数据通信技术有限公司 | 一种无线路由器的连接控制方法及无线路由器 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111325881A (zh) * | 2020-02-26 | 2020-06-23 | 北京安恒利通科技股份公司 | 一种锁具及其二维码控制方法 |
CN111325881B (zh) * | 2020-02-26 | 2022-02-01 | 北京安恒利通科技股份公司 | 一种锁具及其二维码控制方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101046821B (zh) | 通用数据库操纵器 | |
US20090172014A1 (en) | Stream-Oriented Database Machine and Method | |
CN108369550B (zh) | 实时更改来自不同源的数据 | |
CN107589915A (zh) | 一种分布式存储系统的容量信息监控方法、装置及设备 | |
CN109460307A (zh) | 基于日志埋点的微服务调用跟踪方法及其系统 | |
US10354255B2 (en) | Client access license tracking mechanism | |
CN111026602A (zh) | 一种云平台的健康巡检调度管理方法、装置及电子设备 | |
CN109460345B (zh) | 实时数据的计算方法及系统 | |
CN110019469A (zh) | 分布式数据库数据处理方法、装置、存储介质及电子装置 | |
CN108809855A (zh) | 消息管理方法、装置及电子设备 | |
CN113157411B (zh) | 一种基于Celery的可靠可配置任务系统及装置 | |
CN113064744A (zh) | 任务处理方法、装置、计算机可读介质及电子设备 | |
CN102779088B (zh) | 事务处理设备、事务处理方法及事务处理程序 | |
CN109598486A (zh) | 一种排查异常订单的方法和装置 | |
CN108153793A (zh) | 一种原始数据处理方法 | |
CN109669915A (zh) | 一种计算机任务管理方法、装置及相关设备 | |
CN108647763A (zh) | 基于内存数据库的二维码生命周期管理方法及计算机设备 | |
CN111651489A (zh) | 一种大数据处理服务器系统 | |
CN108600284A (zh) | 一种基于Ceph的虚拟机高可用实现方法及系统 | |
CN110059096A (zh) | 数据版本管理方法、装置、设备及存储介质 | |
CN102073690A (zh) | 一种支持历史Key信息的内存数据库 | |
US20150112947A1 (en) | System and method for database flow management | |
CN107295059A (zh) | 业务推送量的统计系统及方法 | |
US20080178182A1 (en) | Work state returning apparatus, work state returning method, and computer product | |
CN108737485A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181012 |