一种实现任务串行的系统和方法

文档序号:7704165阅读:90来源:国知局
专利名称:一种实现任务串行的系统和方法
技术领域
本发明涉及通讯领域,尤其涉及一种统计服务器与业务控制点
(Service Control Point, SCP)的实现任务串行的系统和方法。
背景技术
在业务产品中,有些业务的数据量很大,比如在SCP上进行大 量的数据统计的业务,会对SCP的性能产生很大的负面影响。如果 将这些大量的数据统计放到与SCP不同的服务器上进行统计,就可 以避免对SCP性能的影响。这个服务器我们称之为统计服务器,统 计服务器与SCP是相互独立的,在统计服务器上进行进一步的数据 处理,不会影响SCP的运行,从而减轻了SCP的负担。
统计服务器统计的数据一部分直接提取自SCP,即SCP运行的 任务无需处理可直接导出的数据,另一部分需要经过SCP的任务运
行之后得到的数据中提取,即有些数据由于在统计服务器端不能直接
统计,需要在SCP上进行初步计算统计处理。然而,这就存在一个 问题,如果SCP的任务还没有运行或还没有完成,统计服务器自然
不能取到数据,也就不能进行正确地统计数据,从而造成系统故障。 例如,统计服务器进行统计各个业务区的月租数据的操作,必须
等待SCP上月租的任务运行完毕,统计服务器才能从SCP提取月租
数据,否则,统计出来的各个业务区的月租数据很可能是错误的。

发明内容
本发明所要解决的技术问题是SCP的任务还没有运行或还没有 完成,统计服务器读取SCP任务运行得到的数据并进行统计,导致
统计错误的问题,提出了解决该问题的一种实现任务串行的系统和方 法。
本发明一种实现任务串行的系统,包括业务控制点和统计服务器,其中,
所述业务控制点包括任务处理模块和第一任务管理模块,所述任 务处理模块用于处理任务,所述第 一任务管理模块用于导出所述任务 处理模块的任务处理完毕时得到的数据结果,并将所述数据结果发送
到统计服务器;
所述统计服务器包括第二任务管理模块,所述第二任务管理模块 用于读取所述数据结果,并进行数据统计。
进一步地,在上述系统中,所述业务控制点还包括定时器,所述 定时器用于定时扫描所述任务处理模块的任务处理进度,当扫描到所 述任务处理模块的任务处理完毕时,触发所述第一任务管理模块。
进一步地,在上述系统中,所述业务控制点还包括任务进度监控 模块,所述任务进度监控模块用于监测并记录所述任务处理模块的任 务处理进度,以供所述定时器定时扫描。
进一步地,在上述系统中,所述统计服务器还包括接收和进度处 理模块,所述接收和进度处理模块用于接收所述第一任务管理模块发 送的所述数据结果,并将所述数据结果导入到所述统计服务器的数据 库中,以供所述第二任务管理模块读取。
进一步地,在上述系统中,所述定时器,还用于向所述接收和进
度处理模块发送消息,提示可向业务控制点端提取所述数据结果; 所述接收和进度处理模块,还用于接收所述定时器发送的消息,
并回复消息,提示已经做好接收所述数据结果的准备。 本发明一种实现任务串行的方法,包括以下步骤 业务控制点的任务处理模块处理任务,完毕时得到数据结果,第
一任务管理模块导出所述数据结果,并将所述数据结果发送到统计服
务器;
所述统计服务器的第二任务管理模块读取所述数据结果,并进行 数据统计。
进一步地,在上述方法中,还包括
定时器定时扫描所述任务处理模块的任务处理进度,当扫描到任 务处理完毕时,触发所述第一任务管理模块。进一步地,在上述方法中,在所述业务控制点处理任务时,还包

所述业务控制点的任务进度监控模块监测并记录所述任务处理 模块的任务处理进度,以供所述定时器定时扫描。 进一步地,在上述方法中,还包括
所述统计服务器的接收和进度处理模块接收所述第一任务管理 模块发送的所述数据结果,并将所述数据结果导入到所述统计服务器 的数据库中,以供所述第二任务管理模块读取。
进一步地,在上述方法中,所述接收和进度处理模块接收所述第 一任务管理模块发送的所述数据结果之前,还包括
所述定时器向所述接收和进度处理模块发送消息,提示可向业务 控制点端提取所述数据结果;
所述接收和进度处理模块接收所述定时器发送的消息,并回复消 息,提示已经做好接收所述数据结果的准备。
与现有技术相比较,采用本发明使得SCP和统计服务器的任务 的串行执行,在SCP完成对任务的处理后,从SCP接收处理得到的 数据结果,再进行数据统计,从而保证了统计服务器统计数据的正确 性和稳定性。


图l是本发明一种实现任务串行的系统模块示意图; 图2是本发明一种实现任务串行的方法流程示意图; 图3是本发明一种实现任务串行的方法具体流程示意图。
具体实施例方式
下面结合附图对本发明 一种实现任务串行的系统和方法进行说明。
请参阅图1,其是本发明一种实现任务串行的系统模块示意图。 本发明 一种实现任务串行的系统包括SCP100与统计服务器200。 其中,SCP100包括任务处理模块101、任务进度监控模块102、定时器103和第一任务管理模块104。统计服务器200包括接收和进度处 理模块201和第二任务管理模块202。
任务处理模块101,用于处理处理计划任务中设置的各项任务, 在任务处理完毕时,得到数据结果。该计划任务为SCP100的操作系 统自带的计划任务,其通过系统命令crontab来实现。SCP100的操:作 系统釆用UNIX或者Linux系统。在计划任务中设置特定时间运行预 设的各项任务。
任务进度监控模块102,用于监测并记录任务处理模块101的处 理进度,以供定时器103定时扫描。
定时器103,用于定时扫描任务进度监控模块102记录的处理进 度,在扫描到任务处理完毕时,触发第一任务管理模块104,而且还 用于向接收和进度处理模块201发送消息,提示可向SCP100端提取 数据结果。
第一任务管理模块104,用于任务处理模块101的任务处理完毕 时得到的数据结果,并将所述数据结果发送到统计服务器200。
接收和进度处理模块201,用于接收定时器103发送的消息,并 回复消息,提示已经做好接收数据结果的准备,而且还用于接收第一 任务管理模块104发送的数据结果,并将数据结果导入到统计服务器 200的数据库中。
第二任务管理模块202,用于从数据库中读取数据结果,进行数 据统计。
请参阅图2,其是本发明一种实现任务串行的方法流程示意图。
本发明一种实现任务串行的方法,包括以下步骤
步骤S1、 SCP的任务处理模块处理任务,完毕时得到数据结果,
第 一任务管理才莫块导出所述数据结果,并将所述数据结果发送到统计
服务器;
步骤S2、所述统计服务器的第二任务管理模块读取所述数据结 果,并进行数据统计。
请参阅图3,其是本发明一种实现任务串行的方法具体流程示意图。本发明一种实现任务串行的方法,具体包括以下步骤 步骤Sll、 SCP的计划任务启动。
步骤S12、任务处理模块处理计划任务中设置的各项任务。并且, 在任务处理完毕时,得到数据结果。该模块处理的任务的内容根据 SCP端不同的增值业务而不同。
步骤S13、任务处理模块每处理完一项任务,就会调用一次任务 进度监控模块。任务进度监控模块记录任务处理模块处理计划任务的 当前的处理进度。记录的方式有两种方式,分别是记录为文件方式, 和记录在数据库的数据表中。
步骤S14、运行定时器,该定时器扫描任务进度监控模块记录的 处理进度,得到任务处理模块的处理进度。如果是记录为文件方式, 则定时器扫描该文件,如果是记录在数据库的数据表中,则扫描该数 据表。
步骤S15、当定时器扫描到所述任务的处理完毕,触发第一任务 管理模块,该第一任务管理模块导出数据结果。数据结果的导出,与 SCP的数据库类型相关,不同的数据库类型采取的数据导出方法不 同,如SYBASE数据库一般采用bcp out方式导出,ORACLE数据库 一般采用spool方式导出。
步骤S16、当第一任务管理模块导出数据结果结束时,调用任务 进度监控模块记录第一任务管理模块的处理进度,即导出数据结果结 束。
步骤S17、定时器扫描任务进度监控模块记录的处理进度,发现 记录进度为导出数据结果结束,则向统计服务器发送消息,提示统计 服务器可向SCP端提取数据结果。定时器等待统计服务器的回应消 息,当接收到回应消息时,再次触发任务进度监控模块记录今日SCP 端任务处理结束,实际上是将SCP端的任务进度置于第二天的初始 状态,为下一天的任务做好准备,并停止定时器的工作,减少系统开 销。
进一步,在上述步骤S16中,消息和回应消息的实现方式很多, 此处介绍一种常用简单的实现方式,SCP和统计服务器预先定义好消息的格式,比如采用一定的格式和一定字节数的短小文本,而作为接 收消息的一方以一定的时间间隔,扫描是否接收到消息,若接收到, 检查消息是否双方预先定义好消息的格式。
步骤S21、统计服务器的接收和进度处理模块接收到来自定时器 发送来的消息,向SCP端的定时器回复消息,提示统计服务器已经 做好接收数据结果的准备,并且修正统计服务器的进度到可以取业务 SCP数据的状态。
步骤S22、触发统计服务器的第二任务管理模块,第二任务管理 模块以FTP方式接收从SCP导出的数据结果。通常,导出的数据结 果是文本文件,因此以FTP方式接收时,采用ASCII码传输方式。 当接收完成时,接收和进度处理模块修正统计服务器进度到可以导入 数据状态。
步骤S23、第二任务管理;f莫块导入数据结果。不同的数据库类型 导入的方式不同,对于文本文件导入,SYBASE数据库多采用bcp in 方式导入,ORACLE数据库多采用sqlldr方式导入。当导入结束后, 接收和进度处理模块修正统计服务器进度到可执行任务统计状态。
步骤S24、第二任务管理^t块从数据库中读取数据结果,对数据 结果进行分析处理,得到正确的统计数据。
与现有技术相比较,采用本发明使得SCP和统计服务器的任务 的串行执行,在SCP完成对任务的处理后,从SCP接收处理得到的 数据结果,再进行数据统计,从而保证了统计服务器统计数据的正确 性和稳定性。而且,本发明使用统计服务器来对SCP进行数据统计, 减少SCP上的功耗,提高了SCP的呼叫性能,增加了不同业务的用 户的承载量。
以上仅为本发明的优选实施案例而已,并不用于限制本发明,对 于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发 明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包 含在本发明的保护范围之内。
权利要求
1、一种实现任务串行的系统,包括业务控制点和统计服务器,其特征在于,所述业务控制点包括任务处理模块和第一任务管理模块,所述任务处理模块用于处理任务,所述第一任务管理模块用于导出所述任务处理模块的任务处理完毕时得到的数据结果,并将所述数据结果发送到统计服务器;所述统计服务器包括第二任务管理模块,所述第二任务管理模块用于读取所述数据结果,并进行数据统计。
2、 根据权利要求1所述的系统,其特征在于,所述业务控制点 还包括定时器,所述定时器用于定时扫描所述任务处理模块的任务处 理进度,当扫描到所述任务处理模块的任务处理完毕时,触发所述第 一任务管理模块。
3、 根据权利要求2所述的系统,其特征在于,所述业务控制点 还包括任务进度监控模块,所述任务进度监控模块用于监测并记录所 述任务处理模块的任务处理进度,以供所述定时器定时扫描。
4、 根据权利要求1所述的系统,其特征在于,所述统计服务器 还包括接收和进度处理模块,所述接收和进度处理模块用于接收所述 第 一任务管理^t块发送的所述数据结果,并将所述it据结果导入到所 述统计服务器的数据库中,以供所述第二任务管理模块读取。
5、 根据权利要求4所述的系统,其特征在于,所述定时器,还用于向所述接收和进度处理模块发送消息,提示 可向业务控制点端提取所述数据结果;所述接收和进度处理模块,还用于接收所述定时器发送的消息, 并回复消息,提示已经做好接收所述数据结果的准备。
6、 一种实现任务串行的方法,其特征在于,包括以下步骤 业务控制点的任务处理模块处理任务,完毕时得到数据结果,第一任务管理模块导出所述数据结果,并将所述数据结果发送到统计服务器;所述统计服务器的第二任务管理模块读取所述数据结果,并进行 数据统计。
7、 根据权利要求6所述的方法,其特征在于,还包括 定时器定时扫描所述任务处理模块的任务处理进度,当扫描到任务处理完毕时,触发所述第一任务管理模块。
8、 根据权利要求7所述的方法,其特征在于,在所述业务控制 点处理任务时,还包括所述业务控制点的任务进度监控模块监测并记录所述任务处理 模块的任务处理进度,以供所述定时器定时扫描。
9、 根据权利要求6所述的方法,其特征在于,还包括 所述统计服务器的接收和进度处理模块接收所述第一任务管理模块发送的所述数据结果,并将所述数据结果导入到所述统计服务器 的数据库中,以供所述第二任务管理模块读取。
10、 根据权利要求9所述的方法,其特征在于,所述接收和进度 处理模块接收所述第 一任务管理模块发送的所述数据结果之前,还包 括所述定时器向所述接收和进度处理模块发送消息,提示可向业务 控制点端提取所述数据结果;所述接收和进度处理模块接收所述定时器发送的消息,并回复消 息,提示已经做好接收所述数据结果的准备。
全文摘要
本发明公开了一种实现任务串行的系统和方法。该系统包括业务控制点和统计服务器,其中,业务控制点包括任务处理模块和第一任务管理模块,任务处理模块用于处理任务,第一任务管理模块用于导出任务处理模块的任务处理完毕时得到的数据结果,并将数据结果发送到统计服务器;统计服务器包括第二任务管理模块,第二任务管理模块用于读取数据结果,并进行数据统计。采用本发明保证了统计服务器统计数据的正确性和稳定性。
文档编号H04L12/26GK101557311SQ200910107000
公开日2009年10月14日 申请日期2009年5月15日 优先权日2009年5月15日
发明者李良生 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1