一种报表数据处理方法及相关设备技术

技术编号:11138276 阅读:68 留言:0更新日期:2015-03-12 16:59
本发明专利技术实施例涉及互联网技术领域,公开了一种报表数据处理方法及设备,其中,该方法包括:并行接收前端服务器发送的多个报表查询请求,响应该报表查询请求生成任务,并存储于任务池中;该任务包括查询条件、请求时间以及任务状态,该任务状态包括未执行状态;按照请求时间的先后顺序,串行获取未执行状态的任务,依次将该任务生成报表文件,并将未执行状态修改为已执行并未发送状态;按照请求时间的先后顺序,将已执行并未发送状态的任务对应的报表文件串行发送给前端服务器,并将已执行并未发送状态修改为已发送状态。实施本发明专利技术实施例,可以有效地避免由高并发报表查询请求带来的资源耗尽的风险,进而提高了后台服务器的稳定性。

【技术实现步骤摘要】

本专利技术涉及互联网
,具体涉及一种报表数据处理方法及相关设备
技术介绍
在互联网中,后台服务器可以根据前端服务器发送的报表查询请求进行报表数据处理。例如,后台服务器可以接收前端服务器发送的报表查询请求,并根据该报表查询请求实时的生成一条线程,并利用该线程进行报表数据处理,以生成报表文件,并将生成的报表文件发送给前端服务器。在实践中发现,当存在多个报表查询请求时,后台服务器需要实时的生成多条线程进行报表数据处理。因此,在前端服务器发送的报表查询请求存在高并发的时候,后台服务器会生成高并发的线程数量,多条线程并行地进行报表数据处理,这样很容易造成资源耗尽,从而导致后台服务器稳定性较低。
技术实现思路
本专利技术实施例提供一种报表数据处理方法及相关设备,可以有效地避免由高并发报表查询请求带来的资源耗尽的风险,进而提高了后台服务器的稳定性。本专利技术实施例提供一种报表数据处理方法,包括:并行接收前端服务器发送的多个报表查询请求,响应所述报表查询请求生成任务,并将所述任务存储于任务池中;所述报表查询请求包括查询条件以及请求时间,所述任务用于生成报表文件,所述任务包括所述查询条件、所述请求时间以及任务状态,所述任务状态包括未执行状态;按照所述请求时间的先后顺序,串行获取所述未执行状态的任务,依次将所述未执行状态的任务生成所述报表文件,并将所述未执行状态修改为已执行并未发送状态;按照所述请求时间的先后顺序,将所述已执行并未发送状态的任务对应的所述报表文件串行发送给所述前端服务器,并将所述已执行并未发送状态修改为已发送状态。相应的,本专利技术实施例还提供一种后台服务器,包括:第一单元,用于并行接收前端服务器发送的多个报表查询请求,响应所述报表查询请求生成任务,并将所述任务存储于任务池中;所述报表查询请求包括查询条件以及请求时间,所述任务用于生成报表文件,所述任务包括所述查询条件、所述请求时间以及任务状态,所述任务状态包括未执行状态;第二单元,用于按照所述请求时间的先后顺序,串行获取所述未执行状态的任务,依次将所述未执行状态的任务生成所述报表文件,并将所述未执行状态修改为已执行并未发送状态;第三单元,用于按照所述请求时间的先后顺序,将所述已执行并未发送状态的任务对应的所述报表文件串行发送给所述前端服务器,并将所述已执行并未发送状态修改为已发送状态。实施本专利技术实施例,具有如下有益效果:本专利技术实施例中,后台服务器并行接收前端服务器发送的多个报表查询请求,响应该报表查询请求生成任务并存储于任务池中;该报表查询请求包括查询条件与请求时间,该任务用户生成报表文件,该任务包括该报表查询请求的查询条件及请求时间与任务状态,其中该任务状态包括未执行状态;按照该任务对应的报表查询请求的请求时间的先后顺序,串行获取未执行状态的任务并将该任务生成报表文件,并将未执行状态修改为已执行并未发送状态;按照该任务的请求时间的先后顺序,将已执行并未发送状态任务对应的报表文件串行发送给前端服务器,并将已执行并未发送状态修改为已发送状态。通过本专利技术实施例,后台服务器将并行的报表查询请求转化成串行的报表数据处理,以生成报表文件,从而有效地避免了由高并发请求带来的资源耗尽的风险,进而提高了后台服务器的稳定性。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例提供的一种报表处理方法的流程图;图2是本专利技术实施例提供的另一种报表处理方法的流程图;图3是本专利技术实施例提供的一种具体应用场景的架构示意图;图4是本专利技术实施例提供的一种后台服务器的结构示意图;图5是本专利技术实施例提供的另一种后台服务器的结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术实施例公开了一种报表数据处理方法及设备,可以有效地避免由高并发请求带来的资源耗尽的风险,进而提高了后台服务器的稳定性。下面将结合图1~图3,对本专利技术实施例提供的报表数据处理方法进行详细的介绍。请参阅图1,图1是本专利技术实施例提供的一种报表数据处理方法的流程图。如图1所示,该报表数据处理方法可以包括以下步骤:S101,后台服务器并行接收前端服务器发送的多个报表查询请求,响应该报表查询请求生成任务并存储于任务池中。本专利技术实施例中,后台服务器可以并行接收前端服务器发送的一个或者多个报表查询请求。该报表查询请求可以包括查询条件和查询时间。报表查询请求主要用于生成任务,根据报表查询请求生成的任务用于指示后台服务器生成相应的报表文件,该任务包括有报表查询请求的查询条件和查询时间,还包括任务状态,当生成该任务的时候,任务状态默认为未执行状态。其中,生成的任务还可以包括有以下内容:任务类型、序列号以及文件名等。任务类型用于区分每个任务的不同类型,方便管理;任务池中的每个任务的序列号都不相同。本专利技术实施例中,后台服务器会将根据报表查询请求生成的任务状态为未执行状态的任务存储到任务池中,其中,本文提到的任务池为一个具有存储功能的存储单元,可以为是后台服务器的一部分,也可以是独立于后台服务器的设备,本专利技术实施例在此不作限定。S102,后台服务器按照请求时间的先后顺序,串行获取未执行状态的任务,依次将未执行状态的任务生成报表文件,并将未执行状态修改为已执行并未发送状态。本专利技术实施例中,后台服务器会根据任务池中存储的任务携带的请求时间的先后顺序,将任务状态为未执行状态的任务提取出来,将其生成报表文件,并将该任务的未执行状态修改为已执行状态,最后可以存储于第一单元401中的任务池中。其中,该报表文件包括有该任务包括的查询条件以及查询时间。生成报表文件是依照用户的报表查询请求,根据报表查询请求的查询条件,从数据库里面提取出有用的数据,用表格或者图表的形式来显示数据。本专利技术实施例中,查询条件可以有多种,例如,当要查询公司所有员工的信息时,查询条件可以为公司所有员工本文档来自技高网...

【技术保护点】
一种报表数据处理方法,其特征在于,包括:并行接收前端服务器发送的多个报表查询请求,响应所述报表查询请求生成任务,并将所述任务存储于任务池中;所述报表查询请求包括查询条件以及请求时间,所述任务用于生成报表文件,所述任务包括所述查询条件、所述请求时间以及任务状态,所述任务状态包括未执行状态;按照所述请求时间的先后顺序,串行获取所述未执行状态的任务,依次将所述未执行状态的任务生成所述报表文件,并将所述未执行状态修改为已执行并未发送状态;按照所述请求时间的先后顺序,将所述已执行并未发送状态的任务对应的所述报表文件串行发送给所述前端服务器,并将所述已执行并未发送状态修改为已发送状态。

【技术特征摘要】
1.一种报表数据处理方法,其特征在于,包括:
并行接收前端服务器发送的多个报表查询请求,响应所述报表查询请求生
成任务,并将所述任务存储于任务池中;所述报表查询请求包括查询条件以及
请求时间,所述任务用于生成报表文件,所述任务包括所述查询条件、所述请
求时间以及任务状态,所述任务状态包括未执行状态;
按照所述请求时间的先后顺序,串行获取所述未执行状态的任务,依次将
所述未执行状态的任务生成所述报表文件,并将所述未执行状态修改为已执行
并未发送状态;
按照所述请求时间的先后顺序,将所述已执行并未发送状态的任务对应的
所述报表文件串行发送给所述前端服务器,并将所述已执行并未发送状态修改
为已发送状态。
2.根据权利要求1所述的方法,其特征在于,所述的并行接收前端服务器
发送的多个报表查询请求之前,还包括:
配置失效时间;
所述报表查询请求还包括用户标识;
其中,并行接收前端服务器发送的多个报表查询请求,响应所述报表查询
请求生成任务,并将所述任务存储于任务池中,包括:
并行接收前端服务器发送的多个报表查询请求,针对每一个报表查询请求,
判断任务池中是否存在目标任务,所述目标任务是响应目标报表查询请求生成
的,且所述目标报表查询请求包括的目标请求时间位于所述失效时间之内,所
述目标报表查询请求包括所述报表查询请求的查询条件、所述目标请求时间以
及所述用户标识;
若不存在,则响应所述报表查询请求,生成序列号与所述任务池中任一个
任务的序列号不同的任务,并存储于所述任务池中。
3.根据权利要求2所述的方法,其特征在于,还包括:
若判断所述任务池中存在所述目标任务,则判断所述目标任务的任务状态
是否为已发送状态;
若是,则向所述前端服务器发送通知消息,所述通知消息用于提示所述报
表查询请求已生成任务且根据所述任务生成的报表文件已发送。
4.根据权利要求2所述的方法,其特征在于,所述的按照所述请求时间的
先后顺序,串行获取所述未执行状态的任务,包括:
查询所述任务池中是否存在所述未执行状态的任务;
若存在,则按照所述请求时间的先后顺序,从所述任务池中串行获取所述
未执行状态的任务。
5.根据权利要求4所述的方法,其特征在于,所述的将所述未执行状态修
改为已执行并未发送状态之后,还包括:
将所述已执行并未发送状态的任务存储于所述任务池中;
查询所述任务池中是否存在所述已执行并未发送状态的任务;
若存在,则执行按照所述请求时间的先后顺序,将所述已执行并未发送状
态的任务对应的所述报表文件串行发送给所述前端服务器,并将所述已执行并
未发送状态修改为已发送状态的步骤。
6.根据权利要求1~5任一项所述的方法,其特征在于,所述的依次将所述
未执行状态的任务生成所述报表文件,包括:
根据所述未执行状态的任务的所述查询条件以及所述请求时间,生成报表
文件,所述报表文件包括所述查询条件以及所述请求时间。
7.一种后台服务器,其特征在于,包括:
第一单元,用于并行接收前端服务器发送的多个报表查询请求,响应所述
报表查询请求生成任务,并将所述任务存储于任务池中;所述报表...

【专利技术属性】
技术研发人员:高剑武陶晖刘青吴昀蓁王海涛洪晓林廖爽董亮周剑一谢雨
申请(专利权)人:中国建设银行股份有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1