专利名称:分布式实时集中计费系统的制作方法
技术领域:
本发明涉及一种实时集中计费系统,尤其涉及一种在网络游戏运行环境中的分布式实时集中计费系统。
背景技术:
互联网技术的普及和发展,提供了越来越多的服务内容,例如移动电话、网络游戏、网络电视等等。对于其运营商来说,采取何种措施保证计费平台的准确、合理,以满足用户的需要是非常重要的。特别是对于网络游戏运营商来说,面对的用户数量很大,系统压力非常大。如果计费系统出现问题,可能会给运营商带来损失或招致游戏玩家的投诉,继而导致玩家对游戏公平性的质疑。
目前比较成熟的计费系统或计费方式是采用电信领域中的基于TCP/IP(传输控制与网间协议)技术的分组实时计费模式。在网络游戏领域中通常采用按时长计费、按次计费。绝大部分按时长计费类的系统是采用文件传输批量后扣费,基于文件传输充值和扣费信息同步的模式,并且计费系统和游戏帐户认证系统是相互独立。这样带来了充值和扣费信息同步的时延和计费不及时的问题。不仅造成了由于时延带来的用户投诉和计费不及时的收入损失,并且制约了新业务和增值业务的发展。
在进行网络游戏的过程中,普通的计费方式还会在网络出现问题时出现计费数据丢包现象,在游戏服务器受到黑客攻击、外挂骚扰或非正常停机的情况下也会出现计费数据丢失的问题。当网络游戏运行时,如果分布在各个不同地区的游戏服务器都与中央计费系统通信,会因为网络的问题出现严重的网络延时,从而影响实时计费。
发明内容
本发明要解决的技术问题是提供一种分布式实时集中计费系统,实现实时稳定的统一计费,保证计费数据的可靠性。
为解决上述技术问题,本发明分布式实时集中计费系统,由前台客户端(计费接入系统API)和后台计费系统两部分组成,所述后台计费系统包括本地计费服务系统(LBS)和中央计费服务系统(CBS);所述的计费接入系统以动态库的方式提供给外部应用系统,提供认证、计费接口,接受外部应用系统采集的数据,将信息封装为网络上传输的数据包,并提供数据加密与签名机制,将数据包加密后传输给后台计费系统,防止数据包在网络传输过程中被篡改与伪造;后台计费系统收到请求数据包后解包、验证签名,再根据具体的数据包信息转化为对应的业务信息并做相关处理;后台计费系统处理完成业务请求后,将处理结果再封装成网络传输的加密数据包,回送给计费接入系统,由其通知外部应用系统处理结果。
由于采用上述技术方案,本发明分布式实时集中计费系统形成了由计费接入系统(API)、本地计费服务系统(LBS)、中央计费服务系统(CBS)组成的三层结构计费体系。
计费接入系统由于是具体业务系统,具有多变灵活的特点,而中央计费系统具有稳定规范的特点,采用三层封装的方式,计费接入系统的多种变化,不会影响中央计费系统的稳定;而中央计费系统规范地进行优化和扩展后,计费接入系统的所有应用都可在业务功能上得到扩展。
本发明具有数据缓存、内存镜像、网络故障屏蔽、重复数据删除以及分级计费的安全措施,有效地保证了系统数据的同步和计费数据的稳定和可靠。
具体而言,数据缓存是结合系统的内部实现来完成的,在网络故障或中央数据库宕机的情况下,计费系统会侦测到这种状况,它会自动通知系统管理模块以启动数据缓存模块,保存随后的扣费数据包,待计费系统会侦测到网络正常或数据库恢复时,系统会自动取出缓存数据进行正常的扣费操作,这样保证了系统的数据完整性,对外屏蔽了网络故障和数据库异常等影响计费的不可预知事故。
内存镜像指计费系统保存了内存处理队列中的相关重要的计费数据包在计费系统的环形数据处理模块中,并且模块实时更新所维护的数据。这使得在计费系统宕机时在内存中正在处理而未处理完成的数据能够保存下来,在系统恢复后重新启动时,计费系统可以通过自己提供的环形数据处理模块重新加载前次内存中正在处理的数据以进行扣费操作,这样保证了不丢失一个计费数据包,减少因为异常而造成的损失。
同时系统提供重复数据处理机制,在进行扣费操作前,调用重复数据处理模块来过滤系统的重复数据包,这样可以避免系统的重复扣费情况,减少用户的投诉,保证了计费数据的准确、稳定、可靠。
分级计费指业务通过本地计费系统进行一定时间的结算处理后才集中将处理结果再组包上传中央计费系统进行最终结算。这样可以有效减少网络上传输的数据包,再结合外部应用系统的地域分布特点让其接入不同的本地计费系统,则可以对中央计费系统起到负载均衡的效果,客观上减轻了中央计费系统的压力,大大减少了整个计费系统对外部应用系统的响应时间。
下面结合附图和具体实施方式
对本发明作进一步详细的说明附图是本发明分布式实时集中计费系统方框图。
具体实施例方式
如图所示,本发明分布式实时集中计费系统,由前台客户端(计费接入系统API)和后台计费系统两部分组成,所述后台计费系统包括本地计费服务系统(LBS)和中央计费服务系统(CBS)。
所述的计费接入系统以动态库的方式提供给外部应用系统,提供认证、计费接口,接受外部应用系统采集的数据,将信息封装为网络上传输的数据包,并提供数据加密与签名机制,将数据包加密后传输给后台计费系统,防止数据包在网络传输过程中被篡改与伪造;后台计费系统收到请求数据包后解包、验证签名,再根据具体的数据包信息转化为对应的业务信息并做相关处理;后台计费系统处理完成业务请求后,将处理结果再封装成网络传输的加密数据包,回送给计费接入系统,由其通知外部应用系统处理结果。
计费接入系统、本地计费服务系统及中央计费系统之间均采用私有协议或API(Application Program Interface应用程序接口)作为接口,使得各部分相对独立。
计费接入系统为应用接入层,是分布式实时集中计费系统面向用户提供的接入接口,用于完成用户接入请求,应用接入层处理、控制与本地计费服务系统之间的网络连接,保障在各种网络异常状态下系统数据的完整性,并正确地将业务数据安全传输到本地计费服务系统。
本地计费服务系统为本地业务处理层,是用户接入与具体业务之间的支撑系统,它针对具体业务对分布式实时集中计费系统的需求,通过解释、处理,向中央计费服务系统提交经过初次处理过的数据,在中央计费服务系统的配合下,完成系统功能。中央计费服务系统为中央业务处理层,是所述计费系统的核心,提供业务、数据管理的功能,响应本地计费服务系统的请求,向其提供业务的后续处理、数据的读取和写入。
为了更清楚的了解本发明分布式实时集中计费系统的计费过程,下面以时长用户的完整会话过程为例,对本发明处理实时认证、计费的过程进行说明步骤一、当用户登陆外部应用系统时,外部应用系统收集用户唯一标识信息,以及自身在所述计费系统被分配的唯一标识信息,调用计费接入系统的认证接口传入数据信息,计费接入系统的认证接口根据所述计费系统的通讯协议将外部应用系统填入的数据封装成特殊的内部通信数据包,并加入计费接入系统签名信息,再经过加密处理,将数据包发送给本地计费服务系统。
步骤二、本地计费服务系统收到认证数据包后,解包、验证签名。确认数据包正常,则会直接将用户的认证请求包重新封包再转发给中央计费服务系统。
步骤三、中央计费服务系统收到认证数据包后,解包、验证签名。确认数据包正常,则会调用其授权模块在中央计费数据库查询用户的所有帐务信息,并将查询到的信息按照所述计费系统的通讯协议封装成响应包,加密后回送给本地计费服务系统。
步骤四、本地计费服务系统收到认证响应数据包后解包,确认数据包正常,则直接以最新的帐户信息更新本地计费数据库,同时也将数据包直接回送计费接入系统。
步骤五、计费接入系统则将响应数据包解包,并通知外部应用系统响应结果,至此,认证过程结束。
步骤六、通过认证,用户登陆上了外部应用系统。对于时长计费的系统,外部应用系统持续时间每间隔第一规定时间(例如,默认为15分钟)统计用户消耗信息,调用计费接入系统的扣费接口传入数据信息,计费接入系统的扣费接口根据所述计费系统的通讯协议将外部应用系统填入的数据封装成特殊的内部通信数据包,并加入计费接入系统签名信息,再经过加密处理,将数据包发送给本地计费服务系统。
步骤七、本地计费服务系统收到扣费数据包后,解包、验证签名。确认数据包正常,则直接在本地系统中对用户帐户信息进行本地结算处理,同时将结算后的结果信息封包回送给计费接入系统,由计费接入系统通知外部应用系统更新用户的帐户信息。
步骤八、重复上述六、七过程N(N≥0)次,直到用户帐户余额不足、用户下线或时间间隔超过第二预定时间(可配置,默认为30分钟)间隔,则本地计费服务系统将之前玩家消耗信息打包成一个数据包,上传至中央计费服务系统。
步骤九、中央计费服务系统收到扣费数据包后,解包、验证签名。确认数据包正常,则会调用其扣费模块在中央计费数据库中将用户的帐户信息更新,并将更新后的最新信息按照所述计费系统的通讯协议封装成响应包,加密后回送给本地计费服务系统。
步骤十、本地计费服务系统收到认证响应数据包后,解包。确认数据包正常,则直接以最新的帐户信息更新本地计费数据库,同时也将数据包直接回送计费接入系统以通知外部应用系统获取用户最新帐户信息。
步骤十一、用户退出外部应用系统,则重复过程六~十,用户整个计费过程结束。
附图中的监控系统用于对计费系统的实时运行状态进行监控,系统管理员可以在任何情况下通过监控系统观察计费系统的运行状态;在无人值守的情况下,一旦计费系统运行异常,监控系统将收集系统异常信息并将状况以邮件、短信的形式及时通知相关管理员。
附图中的游戏系统是本发明的外部应用系统之一。接口A和接口B是本地计费系统与中央计费系统之间通讯交互的接口。
权利要求
1.一种分布式实时集中计费系统,其特征在于所述计费系统由计费接入系统和后台计费系统两部分组成,所述后台计费系统包括本地计费服务系统和中央计费服务系统;所述的计费接入系统以动态库的方式提供给外部应用系统,提供认证、计费接口,接受外部应用系统采集的数据,将信息封装为网络上传输的数据包,并提供数据加密与签名机制,将数据包加密后传输给后台计费系统,防止数据包在网络传输过程中被篡改与伪造;后台计费系统收到请求数据包后解包、验证签名,再根据具体的数据包信息转化为对应的业务信息并做相关处理;后台计费系统处理完成业务请求后,将处理结果再封装成网络传输的加密数据包,回送给计费接入系统,由其通知外部应用系统处理结果。
2.如权利要求1所述的分布式实时集中计费系统,其特征在于所述计费接入系统、本地计费服务系统及中央计费系统之间均采用私有协议或API作为接口,各部分相对独立。
3.如权利要求1所述的分布式实时集中计费系统,其特征在于所述计费接入系统是所述计费系统面向用户提供的接入接口,用于完成用户接入请求,应用接入层处理、控制与本地计费服务系统之间的网络连接,保障在各种网络异常状态下系统数据的完整性,并正确地将业务数据安全传输到本地计费服务系统。
4.如权利要求1所述的分布式实时集中计费系统,其特征在于所述本地计费服务系统是用户接入与具体业务之间的支撑系统,它针对具体业务对分布式实时集中计费系统的需求,通过解释、处理,向中央计费服务系统提交经过初次处理过的数据,在中央计费服务系统的配合下,完成系统功能。
5.如权利要求1所述的分布式实时集中计费系统,其特征在于所述中央计费服务系统提供业务、数据管理的功能,响应本地计费服务系统的请求,向其提供业务的后续处理、数据的读取和写入。
6如权利要求1或5所述的分布式实时集中计费系统,其特征在于所述中央计费服务系统具有一监控系统,用于对所述计费系统的实时运行状态进行监控,系统管理员可以在任何情况下通过该监控系统观察所述计费系统的运行状态;在无人值守的情况下,一旦所述计费系统运行异常,监控系统将收集系统异常信息并将状况以邮件、短信的形式及时通知相关管理员。
7.如权利要求1所述的分布式实时集中计费系统,其特征在于所述计费系统的认证过程是步骤一、当用户登陆外部应用系统时,外部应用系统收集用户唯一标识信息,以及自身在所述计费系统被分配的唯一标识信息,调用计费接入系统的认证接口传入数据信息,计费接入系统的认证接口根据所述计费系统的通讯协议将外部应用系统填入的数据封装成特殊的内部通信数据包,并加入计费接入系统签名信息,再经过加密处理,将数据包发送给本地计费服务系统;步骤二、本地计费服务系统收到认证数据包后,解包、验证签名;确认数据包正常,则会直接将用户的认证请求包重新封包再转发给中央计费服务系统;步骤三、中央计费服务系统收到认证数据包后,解包、验证签名;确认数据包正常,则会调用其授权模块在中央计费数据库查询用户的所有帐务信息,并将查询到的信息按照所述计费系统的通讯协议封装成响应包,加密后回送给本地计费服务系统;步骤四、本地计费服务系统收到认证响应数据包后解包,确认数据包正常,则直接以最新的帐户信息更新本地计费数据库,同时也将数据包直接回送计费接入系统;步骤五、计费接入系统则将响应数据包解包,并通知外部应用系统响应结果,至此,认证过程结束。
8.如权利要求1或7所述的分布式实时集中计费系统,其特征在于所述计费系统的计费过程是步骤一、通过认证,用户登陆上了外部应用系统;对于时长计费的系统,外部应用系统持续时间每间隔第一规定时间统计用户消耗信息,调用计费接入系统的扣费接口传入数据信息,计费接入系统的扣费接口根据所述计费系统的通讯协议将外部应用系统填入的数据封装成特殊的内部通信数据包,并加入计费接入系统签名信息,再经过加密处理,将数据包发送给本地计费服务系统;步骤二、本地计费服务系统收到扣费数据包后,解包、验证签名;确认数据包正常,则直接在本地系统中对用户帐户信息进行本地结算处理,同时将结算后的结果信息封包回送给计费接入系统,由计费接入系统通知外部应用系统更新用户的帐户信息;步骤三、重复上述步骤二、三过程N≥0次,直到用户帐户余额不足、用户下线或时间间隔超过第二预定时间间隔,则本地计费服务系统将之前用户消耗信息打包成一个数据包,上传至中央计费服务系统;步骤四、中央计费服务系统收到扣费数据包后,解包、验证签名;确认数据包正常,则会调用其扣费模块在中央计费数据库中将用户的帐户信息更新,并将更新后的最新信息按照所述计费系统的通讯协议封装成响应包,加密后回送给本地计费服务系统;步骤五、本地计费服务系统收到认证响应数据包后,解包;确认数据包正常,则直接以最新的帐户信息更新本地计费数据库,同时也将数据包直接回送计费接入系统以通知外部应用系统获取用户最新帐户信息;步骤六、用户退出外部应用系统,则重复步骤一~五,将用户当次消耗在系统中进行结算,用户整个计费过程结束。
全文摘要
本发明公开了一种分布式实时集中计费系统,计费接入系统以动态库的方式提供给外部应用系统,提供认证、计费接口,接受外部应用系统采集的数据,将信息封装为网络上传输的数据包,并提供数据加密与签名机制,将数据包加密后传输给后台计费系统,防止数据包在网络传输过程中被篡改与伪造;后台计费系统收到请求数据包后解包、验证签名,再根据具体的数据包信息转化为对应的业务信息并做相关处理;后台计费系统处理完成业务请求后,将处理结果再封装成网络传输的加密数据包,回送给计费接入系统,由其通知外部应用系统处理结果。本发明可实现实时稳定的统一计费,保证计费数据的可靠性。
文档编号H04L12/14GK101043343SQ200610025040
公开日2007年9月26日 申请日期2006年3月24日 优先权日2006年3月24日
发明者王洪涛, 周永松, 狄学农 申请人:盛趣信息技术(上海)有限公司