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

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

Info

Publication number
CN106022747B
CN106022747B CN201610311380.XA CN201610311380A CN106022747B CN 106022747 B CN106022747 B CN 106022747B CN 201610311380 A CN201610311380 A CN 201610311380A CN 106022747 B CN106022747 B CN 106022747B
Authority
CN
China
Prior art keywords
equal
preset value
physical database
conditions
distributed
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.)
Active
Application number
CN201610311380.XA
Other languages
English (en)
Other versions
CN106022747A (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 CN106022747A (zh) 2016-10-12
CN106022747B true 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)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107295059B (zh) * 2017-03-07 2020-11-20 创新先进技术有限公司 业务推送量的统计***及方法
CN109949064B (zh) * 2017-12-20 2021-09-03 北京京东尚科信息技术有限公司 一种开放接口调用计费方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103049317A (zh) * 2013-01-10 2013-04-17 中国南方电网有限责任公司超高压输电公司 云环境下基于队列的高并发数据快速写入***及方法
CN103116634A (zh) * 2012-06-12 2013-05-22 上海雷腾软件有限公司 支持高并发缓存任务队列的***及其异步批量操作方法
CN105468784A (zh) * 2015-12-24 2016-04-06 北京京东尚科信息技术有限公司 处理高并发流量的方法及其装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005141441A (ja) * 2003-11-06 2005-06-02 Hitachi Ltd 負荷分散システム
CN102833281B (zh) * 2011-06-15 2018-01-09 中兴通讯股份有限公司 一种分布式自增计数的实现方法、装置及***

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103116634A (zh) * 2012-06-12 2013-05-22 上海雷腾软件有限公司 支持高并发缓存任务队列的***及其异步批量操作方法
CN103049317A (zh) * 2013-01-10 2013-04-17 中国南方电网有限责任公司超高压输电公司 云环境下基于队列的高并发数据快速写入***及方法
CN105468784A (zh) * 2015-12-24 2016-04-06 北京京东尚科信息技术有限公司 处理高并发流量的方法及其装置

Also Published As

Publication number Publication date
CN106022747A (zh) 2016-10-12

Similar Documents

Publication Publication Date Title
US10121290B2 (en) System and method for managing postal accounting data using transient data collectors
CN106327055B (zh) 一种基于大数据技术的电力费控方法及***
CN101208671B (zh) 管理消息队列
CN105630609A (zh) 区块链的打包存储方法
CN103488684B (zh) 基于缓存数据多线程处理的电力可靠性指标快速计算方法
CN107395665A (zh) 一种区块链业务受理及业务共识方法及装置
EP2550632A1 (en) System with multiple conditional commit databases
US8065280B2 (en) Method, system and computer program product for real-time data integrity verification
CN106022747B (zh) 一种基于分布式高并发条件下的计费方法
KR20170041712A (ko) 데이터베이스 고장 시의 데이터 저장
CN110191160A (zh) 一种并发控制方法和装置
CN110191168A (zh) 在线业务数据的处理方法、装置、计算机设备和存储介质
CN106033324A (zh) 一种数据存储的方法和装置
US11144536B2 (en) Systems and methods for real-time analytics detection for a transaction utilizing synchronously updated statistical aggregation data
CN108600284A (zh) 一种基于Ceph的虚拟机高可用实现方法及***
CN107172152A (zh) 一种基于ceph集群cap机制统计配额***及方法
CN110175070A (zh) 分布式数据库的管理方法、装置、***、介质及电子设备
CN107451301B (zh) 实时投递账单邮件的处理方法、装置、设备和存储介质
CN109656877A (zh) 一种用户文件配额的方法、装置及分布式文件***
CN110298677A (zh) 一种云计算资源计费的方法、装置、电子设备和存储介质
CN111343212A (zh) 消息处理方法、装置、设备以及存储介质
CN111882470A (zh) 一种分布式公共征信方法与装置
CN112651685B (zh) 一种增值税电子***的自动补仓方法及***
García-Recuero et al. Towards quality-of-service driven consistency for Big Data management
US11140094B2 (en) Resource stabilization in a distributed network

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