二级缓冲在大并发量实时信用控制中的应用方法

文档序号:7894308阅读:281来源:国知局

专利名称::二级缓冲在大并发量实时信用控制中的应用方法
技术领域
:本发明属于电信运营商大规模准确数据处理应用技术范畴。二、
背景技术
随着我国通信网规模的不断扩大,多运营商使得市场竞争日益激烈。提高服务水准,提供多样化、智能化、层次化的业务成为提高竞争力的重要手段。近年来,预付费业务在世界各地得到了长足的发展,是各种智能业务中发展最为迅速、应用最为广泛的业务。对于运营商,该业务可以避免后付费方式带来的欠费和欺诈现象,降低运营费用,获得更多的流动资金,逐步消除呆坏账问题;对于用户,该业务具有免入网费、免月租费、即买即用的灵活特点,得到了用户的普遍欢迎,取得了良好的社会效益。预付费的实现有多种技术手段早期,电信运营商都采用了智能网技术开展预付费业务,该方案部署快,能实现实时计费;后来,为了巿场竞争的需要,运营商需要根据情况,应时地推出各种各样的套餐来吸引客户,这时智能网技术的就显得力不从心,往往一个新的类型的套餐需求需要半年才能实现,完全跟不上市场的发展,于是运营商开始使用HotBilling来开展预付费业务,这种方式是准实时计费,在业务发展和欠费风险控制上取得了平衡。目前,国内运营商大多采用这种方式实现预付费,这就需要HotBilling具备实时信用控制的能力。实时信用控制包含两层含义一层是"实时",系统每批价完一条话单后,如果该话单产生费用,就需要对用户进行信用控制操作;另外一层是"信用控制",简单的说,是拿客户的余额和客户的消费就行比较,检查客户的余额是否足够,如果余额不够,则要对客户迸行提醒、限制呼叫等操作。目前的业务多种多样,客户的余额也不是单纯的一个数字,可能分语音能使用的余额、数据能使用的余额、账户的余额、用户的余额等,并且余额还有有效期,不同类型的余额之间有使用的优先级。现在电信运营商都以省为单位来建设计费系统,计费系统需要处理的数据量非常巨大,以某省移动公司为例,预付费用户达到1000万,每月各种业务的话单量达到30亿,平均每秒就产生1158条话单;也就是说,每秒至少要进行1000多次信用控制处理;1000万用户的余额记录能达到3000力—条,月消费汇总数据记录能达到1.8亿条,这么大的数据量,需要放到磁盘数据库中,在一台配置56个1.1GHZ的CPU,100G内存的HP主机上,使用oracle9i,一个信用控制的进程,每秒只能做20条;随着进程的增加,总处理条数的增长会逐渐放慢,要达到每秒1158次信用控制处理,在这样一台配置很好的机器上无法靠增加进程数量来实现;需要找出一种技术手段来提高整体的处理性能。三、
发明内容本发明目的是对改进大并发量实时信用控制性能的方法提出的新的技术方案。现在的CPU普遍具备二级Cache,这是为了提高CPU的使用效率,现在CPU的速度已经达到一个前所未有的程度,而内存的访问速度要慢很多,在这两者中间增加2级的缓冲,就能避免对内存的频繁访问从而提高效率;受CPU的启发,本发明在实时信用控制中引入了二级缓冲的技术解决了实时信用控制处理的性能问题。3本发明的技术方案二级缓冲在大并发量实时信用控制中的应用方法,其特征是在大并发量实时信控中引入了二级缓冲的方法,经过二级缓冲的初步判断,即在实时信控之前,引入二级缓冲模块,对于批价完后的话单,先通过二级缓冲处理,二级缓冲把处理后认为触发呼叫限制可能性大的话单再传给实时信控进行处理;二级缓冲处理的步骤第一是减少磁盘I/O,从实时的磁盘访问优化为每半个小时做一次异步的磁盘访问,使得计算内存化且有效提高速度;第二是对需要处理的数据(余额、消费信息)进行压缩,使得余额数据压縮掉约20%,消费信息数据压縮掉约80%,减少数据量,这样才能使得数据内存化成为现实,也能减少计算量,提高速度;第三是减少单位时间内的重复计算量,使计算量减少约5%;第四是判断逻辑简化,不进行余额的有效判断,直接按内存中顺序(不再按优先级排序)进行处理。通过这样的处理,相当于做了一次粗略实时信控,判断出了大部分不需要触发实时信控的话单,减少实时信控的压力,像CPU的二级缓冲在高速的CPU计算部件和相对低速的内存间做了一个缓冲那样,在这1100多次和3次之间建立一个缓冲,进行一个高速的初步的判断,筛选掉大部分不需要触发信用控制的话单,留下导致限制呼叫可能性高的话单来触发信用控制操作,从而减少真正触发信用控制的次数,降低实时信控的压力,那么就能使实时信控能够正常运行;解决实时信控的性能问题。减少计算的数据量、简化判断逻辑,从而在一定的精度范围内(识别出99%的不需要做实时信控处理的话单),高速地进行数据处理。减少计算数据量为不加载无效数据、不加载对准确性影响小的数据、合并相似的数据;所述的简化判断逻辑为在达到精度要求的基础上,去掉对准确性影响小的逻辑。根据实际运营情况的统计,在实时信控处理中,虽然每秒有iioo多次触发,但是真正能触发呼叫限制的事件大约只有2—3条每秒,这里面绝大部分的话单都不会引起呼叫限制,基本做的是"无用功"。本发明的有益效果是测试环境HPSuperDone56*1.1GCPU,100GRAM,0racle9i,1000万预付费用户的数据;测试对象一个省的5天的计费话单,待处理文件数为98102个,共有498779011条记录。测试方法将文件放置于系统输入目录;使用计费流程对文件进行批价合账处理,把批价后事件传给二级缓冲,二级缓冲判断后把可能需要触发信用控制操作的话单再传给信用控制;二级缓冲记录相应的处理日志包括单位每分钟的输入量、输出量;根据日志来判断效果;信用控制记录相应的处理日志包括单位每分钟的输入处理量;根据曰志来判断效果;这种测试方式,因为话单是已经准备好的,数据源充足,可以测试出系统的最大处理能力;二级缓冲部署一个进程,信用控制部署一个进程。测试结果二级缓冲启动后60分钟到70分钟的R志记录:<table>tableseeoriginaldocumentpage4</column></row><table><table>tableseeoriginaldocumentpage5</column></row><table>其中实际代表某分钟;接收输入量代表共接收多少话单;实际处理量在本进程里和输入量一致;输出量代表生成的信用控制工单;输出量一般小于等于实际处理量,越靠近实际处理量,说明二级缓冲的精度越高。测试结果表明信用控制每秒的处理能力大约为16—20条;二级缓冲每秒处理能力为3500条左右,二级缓冲能过滤掉近99%的话单;可以有效缓解实时信用控制的压力。具体实施例方式本发明基于如下技术方式实现1、减少磁盘I/0这个二级缓冲要能高效快速地进行初步判断,过滤掉大部分不需要信控的数据,首先要减少磁盘的1/0,我们把初步判断所需要的数据上载到内存包括余额数据,历史消费记录,当月消费,客户信用度等参考因素;随着用户的一些充值操作,数据库中的余额数据可能会发生变化,我们采用定时的方式,如每半个小时同步到内存一次;这是一个关键点,同步越频繁,这个二级缓冲的判断精度就越高,但是数据库、系统的压力就越大,按照实践经验来看,对iooo万预付费用户的数据量,每半个小时是精度和压力的平衡点;设置数据库数据和内存数据的同步时间间隔;通常为半个小时;2、按照业务规则进行参考数据压縮由于数据量大,全部上载到内存需要很大的空间。我们采用如下业务规则来进行数据压缩余额数据只上载有效内的,未生效余额和已失效余额不进行上载;如果是专款专用的余额,小于一定的阈值的不上载,阈值的大小根据经验设定;这样可以把余额这块的数据量压縮到数据库中的75%到85%。根据经验设置余额上载时,专款专用余额的阈值;通常为5元;历史消费记录按照余额专款专用的类型进行归并后,再上载到内存,可以有效地减少数据量,按照目前的业务,每个用户平均每月有18条消费记录,按照余额专款专用的类型归并后,平均可以减少到5条,数据量縮小到原来的28%;3、对触发的话单进行缓冲按1000万用户的例子,二级缓冲中,每秒要进行1158次的初歩判断处理,实际处理中发现,每10000次处理中,平均只涉及到9500个不同的用户;由于缓冲之前的合账处理速度相对快,这就造成了这里面的500个用户进行了重复处理;所以,我们在二级缓冲中,首先对话单按照用户进行缓冲,一条话单进入系统时,首先判断是不是当前10000条之内己经处理过了,如果处理过了,则直接忽略,这样,可以把处理再縮小5%。在流程中部署二级缓冲模块,该模块从批价进程接收数据;4、判断逻辑适当简化加载到内存中的余额只有有效的余额,并且已经按照优先级排好顺序,所以判断逻辑上可以省略掉对有效期的判断,对优先级的排序计算;权利要求1、二级缓冲在大并发量实时信用控制中的应用方法,其特征是在大并发量实时信控中引入了二级缓冲的方法,经过二级缓冲的初步判断,即在实时信控之前,引入二级缓冲模块,对于批价完后的话单,先通过二级缓冲处理,二级缓冲把处理后认为触发呼叫限制可能性大的话单再传给实时信控进行处理;二级缓冲处理步骤1)减少磁盘I/O,从实时的磁盘访问优化为每半个小时做一次异步的磁盘访问,使得计算内存化且有效提高速度;2)对需要处理的数据进行压缩,使得余额数据压缩掉约20%,消费信息数据压缩掉约80%;3)减少单位时间内的重复计算量,使计算量减少约5%;4)判断逻辑简化,不进行余额的有效判断,直接按内存中顺序进行处理,通过这样的处理,判断出了大部分不需要触发实时信控的话单,减少实时信控的压力,进行一个高速的初步的判断,筛选掉大部分不需要触发信用控制的话单,留下导致限制呼叫可能性高的话单来触发信用控制操作。2、根据权利要求l所述的二级缓冲在大并发量实时信用控制中的应用方法,其特征是减少计算数据量的方法为不加载无效数据、不加载对准确性影响小的数据、合并相似的数据;所述的简化判断逻辑为在达到精度要求的基础上,去掉对准确性影响小的逻辑。全文摘要二级缓冲在大并发量实时信用控制中的应用方法,在大并发量实时信控中引入了二级缓冲的方法,1)减少磁盘I/O,从实时的磁盘访问优化为每半个小时做一次异步的磁盘访问,使得计算内存化且有效提高速度;2)对需要处理的数据进行压缩,使得余额数据压缩掉约20%;3)减少单位时间内的重复计算量,使计算量减少约5%;4)判断逻辑简化,不进行余额的有效判断,直接按内存中顺序进行处理,通过这样的处理,判断出了大部分不需要触发实时信控的话单,减少实时信控的压力,进行一个高速的初步的判断,筛选掉大部分不需要触发信用控制的话单,留下导致限制呼叫可能性高的话单来触发信用控制操作。文档编号H04L12/56GK101505267SQ20091002448公开日2009年8月12日申请日期2009年2月24日优先权日2009年2月24日发明者余志刚,庄学阳,张阿品,岩李,李茂春,林欢欢,帅王,涛蒋,薛庆童,星金,黄晓颖申请人:南京联创科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1