CN106022747A - 一种基于分布式高并发条件下的计费方法 - Google Patents

一种基于分布式高并发条件下的计费方法 Download PDF

Info

Publication number
CN106022747A
CN106022747A CN201610311380.XA CN201610311380A CN106022747A CN 106022747 A CN106022747 A CN 106022747A CN 201610311380 A CN201610311380 A CN 201610311380A CN 106022747 A CN106022747 A CN 106022747A
Authority
CN
China
Prior art keywords
preset value
equal
physical database
distributed
counting
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.)
Granted
Application number
CN201610311380.XA
Other languages
English (en)
Other versions
CN106022747B (zh
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.)
Qichacha Technology Co ltd
Original Assignee
Suzhou Long Mobile Network Technology 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 Suzhou Long Mobile Network Technology Co Ltd filed Critical Suzhou Long Mobile Network Technology Co Ltd
Priority to CN201610311380.XA priority Critical patent/CN106022747B/zh
Publication of CN106022747A publication Critical patent/CN106022747A/zh
Application granted granted Critical
Publication of CN106022747B publication Critical patent/CN106022747B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/14Payment architectures specially adapted for billing systems
    • G06Q20/145Payments according to the detected use or quantity

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及一种基于分布式高并发条件下的计费方法,首先用户发送读取请求,服务器单元接收所述用户发送的读取请求,计数器对接收的读取请求进行计数,并将计数信息采用异步方式存入分布式缓存单元,然后分布式缓存单元再将计数信息同步批量地存入物理数据库,之后物理数据库将计数信息原数据存入备份区,根据备份区所存入的原数据判断物理数据库节点是否发生异常,并输出判断结果,根据不同的结果采用不同的写请求方式。本发明解决现有技术出现的异常计数终止、计数丢失不准确等问题,结合了同步计数和异步计数的优点。

Description

一种基于分布式高并发条件下的计费方法
技术领域
本发明涉及技术领域,具体而言,涉及一种基于分布式高并发条件下的计费方法。
背景技术
目前在计算机程序领域,如需要对客户端发起的请求进行计数,通常做法有两种,一种是直接同步计数,另外一种是异步统计计数。但这两种方式在分布式高并发条件下都会有一些缺陷。如使用同步方式,客户端请求的性能会被计数影响,而计数如出现异常,整个请求也将会中止。如使用异步计数,则又会因为大并发瓶颈,造成计数丢失并且不准确。尤其是在计费领域,需要对计费数据进行采集,并对采集的数据进行计数,因此,研发一种高效、快速稳定的计费方法成为亟待解决的问题。
发明内容
鉴于上述现有技术存在的缺陷,本发明的目的是提出一种基于分布式高并发条件下的计费方法,解决现有技术出现异常计数终止、计数丢失不准确等问题。为实现前述发明目的,本发明采用的技术方案包括:
一种基于分布式高并发条件下的计费方法,包括下述步骤:
步骤一,用户发起服务请求;
步骤二,服务器单元接收所述用户发送的服务请求,对当前用户的信息以同步方式在分布式缓存单元中进行认证,认证成功后系统返回成功标识并计数在分布式缓存单元;
步骤三,分布式缓存单元与物理数据库间进行异步双向通信,当用户对当前服务进行充值时,物理数据库中的剩余量将根据计算相应增加,间隔预设时间读取分布式缓存单元数据,将相应的累加计数N更新回物理数据库;
步骤四,物理数据库将计数信息原数据存入备份区,根据备份区所存入的原数据判断物理数据库节点是否发生异常,并输出判断结果;
步骤五,当判断所述物理数据库节点正常时,物理数据库节点将收到的写请求存入目标地址;
步骤六,当判断所述物理数据库节点发生异常时,物理数据库节点将收到的写请求进行异常判断处理,将指令抛弃结束重新上电初始化。
本发明基于分布式高并发条件下的计费方法,进一步地,所述同步方式在分布式缓存单元中进行认证包括下述步骤:
⑴用户通过自带一个token参数对服务器发起请求。
⑵服务器单元接收到请求,将该用户token以及对应请求的服务名传到分布式缓存单元,分布式缓存单元将对用户信息进行认证,检查所请求的服务是否剩余量大于零。
⑶如用户信息不匹配或者剩余量小于等于零,返回“拒绝”指令。
⑷如果用户信息匹配通过并且剩余量大于零,系统返回“通过”指令,并且当前的计费器计数自动+1,剩余量自动-1。
本发明基于分布式高并发条件下的计费方法,进一步地,所述分布式缓存单元与物理数据库间进行异步双向通信包括下述步骤:
①每隔一分钟,系统自动读取分布式缓存,将相应的累加计数N更新至物理数据库。
②所述物理数据库所对应的剩余量=当前剩余量-N。
③系统再将所得的剩余量更新回分布式缓存单元中。
本发明基于分布式高并发条件下的计费方法,进一步地,当判断所述物理数据库节点正常时,先将计数信息数据备份,判断D1是否为第一预设值,
当D1为第一预设值时,或D1不为第一预设值但D1为第二预设值时,物理数据库节点将收到的写请求从而将计数信息新数据存入目标地址,计数完成,
当D1不为第一预设值,D1也不为第二预设值时,物理数据库节点将收到的写请求进行异常判断处理,将指令抛弃结束重新上电初始化。
本发明基于分布式高并发条件下的计费方法,更进一步地,设置D2等于D1,完成计数。
本发明基于分布式高并发条件下的计费方法,进一步地,重新上电初始化后,D1不等于D2不等于第一预设值、或D1不等于D2不等于第二预设值时,再进一步判断D1是否等于第一预设值或D1是否等于第一预设值,
D1等于第一预设值或D1等于第二预设值,物理数据库节点将收到的写请求从而将计数信息新数据存入目标地址,计数完成,
D1不等于第一预设值或D1不等于第二预设值,将指令抛弃开始其他事务处理。
本发明基于分布式高并发条件下的计费方法,进一步地,重新上电初始化后,当D1等于D2等于第一预设值、或D1等于D2等于第二预设值时,将指令抛弃开始其他事务处理。
本发明基于分布式高并发条件下的计费方法,进一步地,用户经云端向服务器单元发送读取请求。
本发明基于分布式高并发条件下的计费方法,进一步地,所述云端和服务器单元之间有防火墙。
本发明方法通过整合异步、同步两种方式,形成高效快速稳定的计费方法,避免了传统计数出现异常或计数丢失等现象出现。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,并可依照说明书的内容予以实施,以下以本发明的较佳实施例并配合附图详细说明如后。
附图说明
图1是本发明基于分布式高并发条件下的计费方法步骤流程图;
图2是本发明基于分布式高并发条件下的计费方法的部分流程示意图;
图3是本发明基于分布式高并发条件下的计费方法的另一部分流程示意图;
图4是本发明基于分布式高并发条件下的计费方法实施装置结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例,不用来限制本发明的范围。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明要旨是通过整合异步,同步两种方式,打造一个高效,快速稳定的计数方式,主要包括用户发出请求、异步存入计数信息至分布式缓存、同步将分布式缓存数据写入数据库、判断是否出现异常的步骤。
【实施例一】基于分布式高并发条件下的计费方法
如图1所示,具体包括下述步骤:
步骤S1,用户发起服务请求;
步骤S2,服务器单元接收所述用户发送的服务请求,对当前用户的信息以同步方式在分布式缓存单元中进行认证,认证成功后系统返回成功标识并计数在分布式缓存单元。分布式缓存由一个服务端实现管理和控制,有多个客户端节点存储数据,可以进一步提高数据的读取速率。例如要读取某个数据的时候,如果挨个节点找,那效率低下。分布式缓存以数据D,节点总个数为基础,通过一致性哈希算法计算出数据D对应的哈希值,根据这个哈希值就可以找到对应的节点。一致性哈希算法的好处在于节点个数发生变化(减少或增加)时无需重新计算哈希值,保证数据储存或读取时可以正确、快速地找到对应的节点。
步骤S3,分布式缓存单元与物理数据库间进行异步双向通信,当用户对当前服务进行充值时,物理数据库中的剩余量将根据计算相应增加,间隔预设时间读取分布式缓存单元数据,将相应的累加计数N更新回物理数据库。物理数据库,其数据库物理设计包括设计数据库的物理结构,根据数据库的逻辑结构来选定RDBMS(如Oracle、Sybase等),并设计和实施数据库的存储结构、存取方式等。
步骤S4,物理数据库将计数信息原数据存入备份区,根据备份区所存入的原数据判断物理数据库节点是否发生异常,并输出判断结果;
步骤S5,当判断所述物理数据库节点正常时,物理数据库节点将收到的写请求存入目标地址;在判断所述物理数据库节点正常时,可先将计数信息数据备份,判断D1是否为第一预设值。
步骤S6,当判断所述物理数据库节点发生异常时,物理数据库节点将收到的写请求进行异常判断处理,将指令抛弃结束重新上电初始化。
【实施例二】同步方式在分布式缓存单元中进行认证的方法
具体包括下述步骤:
⑴用户通过自带一个token参数对服务器发起请求。
⑵服务器单元接收到请求,将该用户token以及对应请求的服务名传到分布式缓存单元,分布式缓存单元将对用户信息进行认证,检查所请求的服务是否剩余量大于零。
⑶如用户信息不匹配或者剩余量小于等于零,返回“拒绝”指令。
⑷如果用户信息匹配通过并且剩余量大于零,系统返回“通过”指令,并且当前的计费器计数自动+1,剩余量自动-1。这时候经过上述同步方式在分布式缓存单元中进行认证步骤以后,其增加的值,也会相应的同步进了缓存,这样整个系统就保持了一致。
【实施例三】分布式缓存单元与物理数据库间进行异步双向通信方法
具体包括下述步骤:
①每隔一分钟,系统自动读取分布式缓存,将相应的累加计数N更新至物理数据库。
②所述物理数据库所对应的剩余量=当前剩余量-N。
③系统再将所得的剩余量更新回分布式缓存单元中,该分布式缓存单元的剩余量只是供核对时检查使用,以物理数据库中为准。
【实施例四】判断所述物理数据库节点正常与否的方法
如图2所示,判断所述物理数据库节点正常:
当D1为第一预设值时,或D1不为第一预设值但D1为第二预设值时,物理数据库节点将收到的写请求从而将计数信息新数据存入目标地址,计数完成。
可设置D2等于D1,完成计数。
如图3所示,判断所述物理数据库节点不正常:。
当D1不为第一预设值,D1也不为第二预设值时,物理数据库节点将收到的写请求进行异常判断处理,将指令抛弃结束重新上电初始化。
重新上电初始化后,D1不等于D2不等于第一预设值、或D1不等于D2不等于第二预设值时,再进一步判断D1是否等于第一预设值或D1是否等于第一预设值。或是重新上电初始化后,当D1等于D2等于第一预设值、或D1等于D2等于第二预设值时,将指令抛弃开始其他事务处理。
D1等于第一预设值或D1等于第二预设值,物理数据库节点将收到的写请求从而将计数信息新数据存入目标地址,计数完成,
D1不等于第一预设值或D1不等于第二预设值,将指令抛弃开始其他事务处理。
【实施例五】基于分布式高并发条件下的计费装置
如图4所示,包括服务器单元1、分布式缓存单元2、物理数据库3,服务器单元1用于接收用户5发送的服务请求,优选地,用户5可以经云端6向服务器单元1发送服务请求。并且,可以在所述云端6和服务器单元1设置防火墙4,用于筛选服务请求。
本发明方法通过整合异步、同步两种方式,形成高效快速稳定的计费方法,避免了传统计数出现异常或计数丢失等现象出现。本发明尚有多种实施方式,凡采用等同变换或者等效变换而形成的所有技术方案,均落在本发明的保护范围之内。

Claims (9)

1.一种基于分布式高并发条件下的计费方法,其特征在于包括下述步骤:
用户发起服务请求;
服务器单元接收所述用户发送的服务请求,对当前用户的信息以同步方式在分布式缓存单元中进行认证,认证成功后系统返回成功标识并计数在分布式缓存单元;
分布式缓存单元与物理数据库间进行异步双向通信,当用户对当前服务进行充值时,物理数据库中的剩余量将根据计算相应增加,间隔预设时间读取分布式缓存单元数据,将相应的累加计数N更新回物理数据库;
物理数据库将计数信息原数据存入备份区,根据备份区所存入的原数据判断物理数据库节点是否发生异常,并输出判断结果;
当判断所述物理数据库节点正常时,物理数据库节点将收到的写请求存入目标地址;
当判断所述物理数据库节点发生异常时,物理数据库节点将收到的写请求进行异常判断处理,将指令抛弃结束重新上电初始化。
2.根据权利要求1所述的一种基于分布式高并发条件下的计费方法,其特征在于:所述同步方式在分布式缓存单元中进行认证包括下述步骤:
用户通过自带一个token参数对服务器发起请求,
服务器单元接收到请求,将该用户token以及对应请求的服务名传到分布式缓存单元,分布式缓存单元将对用户信息进行认证,检查所请求的服务是否剩余量大于零,
如用户信息不匹配或者剩余量小于等于零,返回“拒绝”指令,
如果用户信息匹配通过并且剩余量大于零,系统返回“通过”指令,并且当前的计费器计数自动+1,剩余量自动-1。
3.根据权利要求1所述的一种基于分布式高并发条件下的计费方法,其特征在于:所述分布式缓存单元与物理数据库间进行异步双向通信包括下述步骤:
每隔一分钟,系统自动读取分布式缓存,将相应的累加计数N更新至物理数据库,
所述物理数据库所对应的剩余量=当前剩余量-N,
系统再将所得的剩余量更新回分布式缓存单元中。
4.根据权利要求1所述的一种基于分布式高并发条件下的计费方法,其特征在于:当判断所述物理数据库节点正常时,先将计数信息数据备份,判断D1是否为第一预设值,
当D1为第一预设值时,或D1不为第一预设值但D1为第二预设值时,物理数据库节点将收到的写请求从而将计数信息新数据存入目标地址,计数完成,
当D1不为第一预设值,D1也不为第二预设值时,物理数据库节点将收到的写请求进行异常判断处理,将指令抛弃结束重新上电初始化。
5.根据权利要求4所述的一种基于分布式高并发条件下的计费方法,其特征在于:设置D2等于D1,完成计数。
6.根据权利要求1所述的一种基于分布式高并发条件下的计费方法,其特征在于:重新上电初始化后,D1不等于D2不等于第一预设值、或D1不等于D2不等于第二预设值时,再进一步判断D1是否等于第一预设值或D1是否等于第一预设值,
D1等于第一预设值或D1等于第二预设值,物理数据库节点将收到的写请求从而将计数信息新数据存入目标地址,计数完成,
D1不等于第一预设值或D1不等于第二预设值,将指令抛弃开始其他事务处理。
7.根据权利要求1所述的一种基于分布式高并发条件下的计费方法,其特征在于:重新上电初始化后,当D1等于D2等于第一预设值、或D1等于D2等于第二预设值时,将指令抛弃开始其他事务处理。
8.根据权利要求1所述的一种基于分布式高并发条件下的计费方法,其特征在于:用户经云端向服务器单元发送读取请求。
9.根据权利要求8所述的一种基于分布式高并发条件下的计费方法,其特征在于:所述云端和服务器单元之间有防火墙。
CN201610311380.XA 2016-05-12 2016-05-12 一种基于分布式高并发条件下的计费方法 Active CN106022747B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610311380.XA CN106022747B (zh) 2016-05-12 2016-05-12 一种基于分布式高并发条件下的计费方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610311380.XA CN106022747B (zh) 2016-05-12 2016-05-12 一种基于分布式高并发条件下的计费方法

Publications (2)

Publication Number Publication Date
CN106022747A true CN106022747A (zh) 2016-10-12
CN106022747B CN106022747B (zh) 2019-09-27

Family

ID=57099412

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610311380.XA Active CN106022747B (zh) 2016-05-12 2016-05-12 一种基于分布式高并发条件下的计费方法

Country Status (1)

Country Link
CN (1) CN106022747B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107295059A (zh) * 2017-03-07 2017-10-24 阿里巴巴集团控股有限公司 业务推送量的统计系统及方法
CN109949064A (zh) * 2017-12-20 2019-06-28 北京京东尚科信息技术有限公司 一种开放接口调用计费方法和装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1530341A1 (en) * 2003-11-06 2005-05-11 Hitachi, Ltd. Load balancing system
CN103049317A (zh) * 2013-01-10 2013-04-17 中国南方电网有限责任公司超高压输电公司 云环境下基于队列的高并发数据快速写入系统及方法
CN103116634A (zh) * 2012-06-12 2013-05-22 上海雷腾软件有限公司 支持高并发缓存任务队列的系统及其异步批量操作方法
EP2723017A1 (en) * 2011-06-15 2014-04-23 ZTE Corporation Method, apparatus and system for implementing distributed auto-incrementing counting
CN105468784A (zh) * 2015-12-24 2016-04-06 北京京东尚科信息技术有限公司 处理高并发流量的方法及其装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1530341A1 (en) * 2003-11-06 2005-05-11 Hitachi, Ltd. Load balancing system
EP2723017A1 (en) * 2011-06-15 2014-04-23 ZTE Corporation Method, apparatus and system for implementing distributed auto-incrementing counting
CN103116634A (zh) * 2012-06-12 2013-05-22 上海雷腾软件有限公司 支持高并发缓存任务队列的系统及其异步批量操作方法
CN103049317A (zh) * 2013-01-10 2013-04-17 中国南方电网有限责任公司超高压输电公司 云环境下基于队列的高并发数据快速写入系统及方法
CN105468784A (zh) * 2015-12-24 2016-04-06 北京京东尚科信息技术有限公司 处理高并发流量的方法及其装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107295059A (zh) * 2017-03-07 2017-10-24 阿里巴巴集团控股有限公司 业务推送量的统计系统及方法
CN109949064A (zh) * 2017-12-20 2019-06-28 北京京东尚科信息技术有限公司 一种开放接口调用计费方法和装置
CN109949064B (zh) * 2017-12-20 2021-09-03 北京京东尚科信息技术有限公司 一种开放接口调用计费方法和装置

Also Published As

Publication number Publication date
CN106022747B (zh) 2019-09-27

Similar Documents

Publication Publication Date Title
CN110868440B (zh) 区块链公链
CN104216835B (zh) 一种实现内存融合的方法及装置
WO2022143242A1 (zh) 基于区块链的交易分发执行方法、装置服务器及存储介质
CN104156361B (zh) 一种实现数据同步的方法及系统
CN1815469B (zh) 一种数据库连接资源的管理方法
US10331657B1 (en) Contention analysis for journal-based databases
CN107566531A (zh) 一种支持均衡资源的Elasticsearch集群扩展方法
WO2022111188A1 (zh) 事务处理方法、系统、装置、设备、存储介质及程序产品
CN106021468A (zh) 分布式缓存和本地缓存的更新方法和系统
CN106022747A (zh) 一种基于分布式高并发条件下的计费方法
CN109558437A (zh) 主osd调整方法及装置
US11144536B2 (en) Systems and methods for real-time analytics detection for a transaction utilizing synchronously updated statistical aggregation data
CN115617908A (zh) 一种MySQL数据同步方法、装置、数据库终端、介质及系统
Chen et al. A wear-leveling-aware fine-grained allocator for non-volatile memory
CN107943958A (zh) 一种个税主数据共享方法及系统
CN114185867A (zh) 确认数据一致性的方法、装置和电子设备
CN111563129A (zh) 一种分布式存储区块链账本的方法
CN106201727A (zh) 一种操作系统的内存管理方法及装置
CN114297197A (zh) 基于多云费用管理方法及系统
CN107315840A (zh) 数据库中存储空间的管理方法和装置
WO2019184426A1 (zh) 一种分户计费方法、装置及系统
CN106354421A (zh) 筛选方法、筛选器及数据一致性维护系统
CN112559511A (zh) 一种存款系统历史数据清理方法和系统
CN112381537A (zh) 一种热点账户记账的方法
TWI630496B (zh) Data storage method and system thereof

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address

Address after: Room 503, 5th floor, C1 Building, 88 Dongchang Road, Suzhou Industrial Park, Jiangsu Province, 215000

Patentee after: Qicha Technology Co.,Ltd.

Address before: Moon Bay Road Suzhou City, Jiangsu province 215000 Industrial Park No. 10 Hui Lake building A block 901

Patentee before: SUZHOU LANGDONG NET TEC Co.,Ltd.

CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: No. 8 Huizhi Street, Suzhou Industrial Park, Suzhou Area, China (Jiangsu) Pilot Free Trade Zone, Suzhou City, Jiangsu Province, 215000

Patentee after: Qichacha Technology Co.,Ltd.

Address before: Room 503, 5th floor, C1 Building, 88 Dongchang Road, Suzhou Industrial Park, Jiangsu Province, 215000

Patentee before: Qicha Technology Co.,Ltd.

CP03 Change of name, title or address