CN107239327A - 保单处理的优化方法和装置 - Google Patents
保单处理的优化方法和装置 Download PDFInfo
- Publication number
- CN107239327A CN107239327A CN201610187054.2A CN201610187054A CN107239327A CN 107239327 A CN107239327 A CN 107239327A CN 201610187054 A CN201610187054 A CN 201610187054A CN 107239327 A CN107239327 A CN 107239327A
- Authority
- CN
- China
- Prior art keywords
- task
- breakpoint
- declaration form
- carried out
- tasks
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明涉及一种保单处理的优化方法和装置,所述方法包括以下步骤:抓取保单,利用抓取到的保单生成多个任务;运行多个进程对所述任务执行并发操作;记录所述任务的执行状况;当所述多个进程退出后再次运行执行任务时,根据所述任务的执行状况查找多个进程在退出时对应的断点任务,所述多个进程从所述断点任务开始继续执行并发操作。采用本方法能够有效提高保单处理效率。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种保单处理的优化方法和装置。
背景技术
随着社会的发展,保险已经深入到人们的生活。保险的类型也是越来越多。每个类型的保险对数据准确性的要求都非常高,因此在后台处理的计算逻辑都会很复杂。对于需要进行月结处理的保单来说,由于保单数量较多,月结处理中处理的数据量非常庞大。传统的方式,如果在月结处理时,进程由于某种原因从数据库中退出,使得月结处理无法继续进行时,需要重新对所有的数据进行再次计算,由此导致保单处理的耗时较长。
发明内容
基于此,有必要针对上述技术问题,提供一种能够有效提高保单处理效率的保单处理的优化方法和装置。
一种保单处理的优化方法,所述方法包括以下步骤:
抓取保单,利用抓取到的保单生成多个任务;
运行多个进程对所述任务执行并发操作;
记录所述任务的执行状况;
当所述多个进程退出后再次运行执行任务时,根据所述任务的执行状况查找多个进程在退出时对应的断点任务,所述多个进程从所述断点任务开始继续执行并发操作。
在其中一个实施例中,所述利用抓取到的保单生成多个任务的步骤包括:
根据机构标识获取对应的多个险种;
利用所述险种对应的保单生成对应的任务。
在其中一个实施例中,所述运行多个进程对所述任务执行并发操作的步骤包括:
获取任务标识,根据所述任务标识对任务进行分组,得到多个任务组;
对所述任务组分配对应的进程;
多个进程根据对应的任务组执行并发操作。
在其中一个实施例中,所述运行多个进程对所述任务执行并发操作的步骤包括:
多个进程随机获取任务,执行并发操作;
在任务执行完之后,进程随机获取下一个任务进行对应操作。
在其中一个实施例中,所述根据所述任务的执行状况查找多个进程在退出时对应的断点任务的步骤包括:
调用日志表,所述日志表中记录了任务执行状况;
根据所述任务执行状况在所述日志表中查找已开始执行且尚未执行完毕的任务;
将所述已开始执行且尚未执行完毕的任务作为所述多个进程从数据库中退出时对应的断点任务。
在其中一个实施例中,所述将所述已开始执行且尚未执行完毕的任务作为所述进程从数据库中退出时对应的断点任务的步骤包括:
根据所述日志表获取所述已开始执行且尚未执行完毕的任务中未执行的保单;
将所述未执行的保单作为所述进程从数据库中退出时对应的断点任务。
在其中一个实施例中,所述多个进程从所述断点任务开始继续执行并发操作的步骤包括:
调用任务表,所述任务表中记录了所有的任务;
根据所述日志表确定所述任务表中未执行的任务;
利用多个进程从所述断点任务开始继续对未执行的任务进行并发操作。
一种保单处理的优化装置,所述装置包括:
任务生成模块,用于抓取保单,利用抓取到的保单生成多个任务;
任务执行模块,用于运行多个进程对所述任务执行并发操作;
记录模块,用于记录所述任务的执行状况;
断点续执行模块,用于当所述多个进程退出后再次运行执行任务时,根据所述任务的执行状况查找多个进程在退出时对应的断点任务,所述多个进程从所述断点任务开始继续执行并发操作。
在其中一个实施例中,所述断点续执行模块还用于调用日志表,所述日志表中记录了任务执行状况;根据所述任务执行状况在所述日志表中查找已开始执行且尚未执行完毕的任务;将所述已开始执行且尚未执行完毕的任务作为所述多个进程从数据库中退出时对应的断点任务。
在其中一个实施例中,所述断点续执行模块还用于调用任务表,所述任务表中记录了所有的任务;根据所述日志表确定所述任务表中未执行的任务;利用多个进程从所述断点任务开始继续对未执行的任务进行并发操作。
上述保单处理的优化方法和装置,利用抓取到的保单生成多个任务,通过运行多个进程对所述任务执行并发操作,并且对任务的执行状况进行记录。当所述多个进程退出后再次运行执行任务时,不需要对所有的任务重新执行。可以根据所述任务的执行状况查找多个进程在退出时对应的断点任务,使得多个进程从所述断点任务开始继续执行并发操作。由此省去了对任务中的保单进行全量补执行的时间,而且通过查找断点任务,在断点任务开始继续执行,有效防止任务的漏执行和误执行等,有效提高了保单处理效率。
附图说明
图1为一个实施例中保单处理的优化方法的流程图;
图2为一个实施例中服务器的结构示意图;
图3为一个实施例中保单处理的优化装置的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
在一个实施例中,如图1所示,提供了一种保单处理的优化方法,以该方法应用于服务器为例进行说明,具体包括以下步骤:
步骤102,抓取保单,利用抓取到的保单生成多个任务。
服务器在数据库中抓取待处理的保单。服务器抓取到的保单可以是多个险种的保单。由于每个险种的保单数量较多,服务器可以对抓取到的保单生成多个任务。
在一个实施例中,利用抓取到的保单生成多个任务的步骤包括:根据机构标识获取对应的多个险种;利用险种对应的保单生成对应的任务。
服务器可以对多家机构的保单进行处理。服务器获取多家机构的机构标识,根据机构标识获取该机构承保的多个险种。服务器根据机构标识将每个险种的保单分别生成对应的任务。通过根据机构标识对每个险种的保单生成任务,从而方便进程按照每个险种不同的计算逻辑来对保单进行处理,能够有效提高保单处理的准确性。
面对海量的保单,还可以对每个任务设置阈值。每个险种的保单数量超过阈值则可以生成多个任务。例如,某个险种的保单数量为10万,阈值为5万,则该险种的保单可以生成2个任务。
进一步的,对保单进行与保险准备金相关的处理时,例如对保险准备金分红利息等进行处理时,服务器会对保额总量大大设定值的机构的保单进行处理。服务器会获取保额总量达到设定值的机构标识,根据机构标识获取与该机构标识对应的多个险种,利用险种对应的保单生成对应的任务。
步骤104,运行多个进程对任务执行并发操作。
服务器上运行了多个进程。通过多个进程可以在数据库中对任务执行并发操作,按照预设的逻辑对保单进行处理。其中,进程数量少于任务数量。例如,保单数量为500万,可以将保单分为100个任务。服务器上运行了5个进程来对这100个任务执行并发操作,按照预设的逻辑对保单进行处理。
步骤106,记录任务的执行状况。
服务器对保单处理中的各个步骤增加日志监控。通过日志来记录每个步骤的执行状况。服务器利用多个日志来生成对应的日志表。一旦在保单处理中出现问题,服务器可以通过调用日志表快速定位到出错的位置。
步骤108,当多个进程退出后再次运行执行任务时,根据任务的执行状况查找多个进程在退出时对应的断点任务,多个进程从断点任务开始继续执行并发操作。
当多个进程在某个时刻从数据库中退出时,可能还没有对所有的任务执行完毕。需要再一次运行进程对尚未执行的任务继续进行并发操作。具体的,当多个进程再次运行时,根据日志表中记录的任务的执行状况查找出多个进程从数据库中退出时对应的断点任务。从断点任务开始,多个进程再次继续执行并发操作,按照预设的逻辑对保单进行处理。
进一步的,由于保单数量较多,在数据库中对保单进行处理时会占用数据库较多的资源,由此导致数据库的资源消耗较大。为了有效缓解数据库的资源消耗,可以在数据库的空闲时间进行保单处理。数据库的空闲时间可以是工作时间之外的一段时间。面对海量的保单,多个进程在同一天内的数据库的空闲时间可能无法将所有的保单处理完毕,需要分多次在数据库的空闲时间进行处理。因此,在到达数据库的空闲时间时,服务可以运行多个进程在数据库对保单进行处理,在数据库的空闲时间的结束时,多个进程从数据库中退出,暂停对保单的处理。当再次到达数据库的空闲时间时,服务器根据日志表中记录的任务的执行状况查找出多个进程上一次从数据库中退出时对应的断点任务。服务器再次运行多个进程从断点任务开始继续执行并发操作,按照预设的逻辑对保单进行处理。
进一步的,服务器运行多个进程在数据库中从断点任务开始继续执行并发操作之前,服务器会获取断点任务中的保单数量,根据保单数量估计执行断点任务的耗时。如果估计到的耗时与对数据库进行操作的其他应用程序会发生冲突,则服务器认定此时执行断点任务存在风险,对断点任务不予执行。
本实施例中,利用抓取到的保单生成多个任务,通过运行多个进程对任务执行并发操作,并且对任务的执行状况进行记录。当多个进程退出后再次运行执行任务时,不需要对所有的任务重新执行。可以根据任务的执行状况查找多个进程在退出时对应的断点任务,使得多个进程从断点任务开始继续执行并发操作。由此省去了对任务中的保单进行全量补执行的时间,而且通过查找断点任务,在断点任务开始继续执行,有效防止任务的漏执行和误执行等,有效提高了保单处理效率。
在一个实施例中,运行多个进程对任务执行并发操作的步骤包括:获取任务标识,根据任务标识对任务进行分组,得到多个任务组;对任务组分配对应的进程;多个进程根据对应的任务组执行并发操作。
本实施例中,每个任务都具有唯一的任务标识。服务器获取任务标识,根据任务标识对任务进行分组,得到多个任务组。
在一个实施例中,服务器获取任务标识,根据预设的任务组数量按照任务标识的顺序对任务进行分组,得到多个任务组。例如,数据库中的任务总共有100个。每个任务都具有对应的任务标识。预设的任务组为10个。根据任务标识的顺序将每10个任务分为一组,由此得到10个任务组。
在一个实施例中,任务标识可以是任务编号,服务器获取每个险种对应的任务,根据任务编号获取编号位数相同的任务,将编号尾数相同的任务分为一个任务组,得到多个任务组。例如,数据库中的任务总共有100个。每个任务都具有对应的任务编号,如任务1、任务2……任务100。将任务编号尾数相同的任务分为一组。如,将任务1、任务11、任务21……任务91分为一组,由此得到10个任务组。
服务器对每个任务组分配对应的进程。也就是说,每个进程会固定执行对应的任务组中的任务。例如,总共有10个任务组,每个任务组中有10个任务,服务器上运行了5个进程,服务器将进程1分配给任务组1和任务组3,则进程1将固定执行任务组1中的10个任务,直至任务组1中的任务执行完毕。进程1在执行完任务组1之后,再去执行任务组3。多个进程根据对应的任务组执行并发操作,对保单进行处理。本实施例中,由于进程固定执行某个任务标识对应的任务,因此容易发现任务执行过程中出现的异常,维护成本较低。
在一个实施例中,运行多个进程对任务执行并发操作的步骤包括:多个进程随机获取任务,执行并发操作;在任务执行完之后,进程随机获取下一个任务进行对应操作。
本实施例中,进程不会固定执行某个任务,可以随机获取任务来执行。多个进程可以同时获取多个任务并发执行操作,对保单进行处理。在进程处理完一个任务后,可以自行随机获取下一个任务来执行。由于不需要进程固定执行某个任务,因此能够有效缩短执行任务的耗时。
在一个实施例中,根据任务的执行状况查找多个进程在退出时对应的断点任务的步骤包括:调用日志表,日志表中记录了任务执行状况;根据任务执行状况在日志表中查找已开始执行且尚未执行完毕的任务;将已开始执行且尚未执行完毕的任务作为多个进程从数据库中退出时对应的断点任务。
本实施例中,服务器对保单处理的每个步骤都增加了日志监控。通过日志来记录每个步骤的执行状况,具体的,服务器对抓取保单、利用抓取到的保单生成多个任务、多个进程对任务执行并发操作等步骤通过日志来记录具体的执行状况。服务器利用多个日志来生成对应的日志表。服务器可以通过调用日志表快速定位到出错的位置。
当多个进程从数据库中退出时,在日志表中记录了任务的执行状况。由于保单数据庞大,多个进程无法一次性将所有的保单处理完,因此数据库中可能会存在已经开始执行且尚未执行完毕的任务。服务器根据日志表中记录的任务执行状况,在日志表中查找已经开始执行且尚未执行完毕的任务。将查找到的已经开始执行且尚未执行完毕的任务作为多个进程从数据库中退出时对应的断点任务。
由于多个进程对任务执行并发操作,因此,数据库中可能会有多个已经开始执行且尚未执行完毕的任务。可以将这多个已经开始执行且尚未执行完毕的任务作为多个进程从数据库中退出时对应的多个断点任务。
本实施例中,通过调用日志表,根据日志表中记录的任务执行状况,能够快速准确定位到断点任务,有效提高了数据准确性。
进一步的,当多个进程从数据库中退出时,数据库中也可能不存在已经开始执行且尚未执行完毕的任务,任务中的保单已被全部处理完毕。在进程从数据库中退出时,记录已处理的任务编号最小的任务,将任务编号最小的任务作为断点任务。
在一个实施例中,将已开始执行且尚未执行完毕的任务作为进程从数据库中退出时对应的断点任务的步骤包括:根据日志表获取已开始执行且尚未执行完毕的任务中未执行的保单;将未执行的保单作为进程从数据库中退出时对应的断点任务。
本实施例中,服务器在查找出断点任务后,可以利用进程对断点任务补执行。每个任务中的保单数据较多,由于断点任务中的部分保单已被处理,如果进程对断点任务中的保单进行全量补执行的话,则会对之前的工作造成浪费,使得保单处理的耗时增长。为了有效提高保单处理效率,服务器可以根据日志表的记录获取已开始执行且尚未执行完毕的任务中尚未执行的保单,将这些未执行的保单作为进程从数据库中退出时对应的断点任务。
进一步的,如果在数据库中查找到多个已经开始执行且尚未执行完毕的任务,服务器可以根据日志表的记录分别获取每个已经开始执行且尚未执行完毕的任务中尚未执行的保单,将未执行的保单作为多个进程从数据库中退出时对应的断点任务。
在一个实施例中,多个进程从断点任务开始继续执行并发操作的步骤包括:调用任务表,任务表中记录了所有的任务;根据日志表确定任务表中未执行的任务;利用多个进程从断点任务开始继续对未执行的任务进行并发操作。
本实施例中,服务器利用任务表来记录所有的任务。服务器在查找到断点任务后,调用任务表,根据日志表中记录的任务的执行状况来确定任务表中执行完毕的任务和未执行的任务。服务器调取日志表,查找日志表中已开始执行且尚未执行完毕的任务对应的任务,将已开始执行且尚未执行完毕的任务作为断点任务。其中,断点任务对应的任务编号可以是进程从数据库中退出时任务编号最小的。服务器根据任务编号从断点任务开始查看下一个任务是否已执行完,若是,则跳至下一个任务,直至查到未执行的任务继续开始执行。多个进程继续执行并发操作,对保单进行处理。
如果多个进程从数据库中退出时,数据库中不存在已经开始执行且尚未执行完毕的任务,任务中的保单已被全部处理完毕。在进程从数据库中退出时,记录已处理的任务编号最小的任务,将任务编号最小的任务作为断点任务。服务器根据任务编号从断点任务开始查看下一个任务是否已执行完,若是,则跳至下一个任务,直至查到未执行的任务继续开始执行。多个进程继续执行并发操作,对保单进行处理。
如果多个进程从数据库中退出时,数据库中存在已经开始执行且尚未执行完毕的任务以及保单被全部处理完毕的任务,并且保单被全部处理完毕的任务对应的任务编号小于已经开始执行且尚未执行完毕的任务对应的任务编号,那么可以将任务编号小的保单被全部处理完毕的任务作为第一断点任务,将任务编号大的已经开始执行且尚未执行完毕的任务作为第二断点任务。服务器调用日志表查看已经执行的任务,服务器调用任务表从第一断点任务开始查找下一个任务是否已执行完,若是,则跳至下一个任务,直至查到未执行的任务继续开始执行。同时,服务器会从第二断点任务开始查找下一个任务是否已执行完,若是,则跳至下一个任务,直至查到未执行的任务继续开始执行。多个进程继续执行并发操作,对保单进行处理。
进一步的,多个进程从数据库中退出时,数据库中还可能会有多个已经开始执行且尚未执行完毕的任务,将这多个已经开始执行且尚未执行完毕的任务分别作为断点任务。服务器可以对多个断点任务分配对应的进程,如果进程数量大于断点任务数量,则服务器还可以对未执行的任务分配进程,多个进程并发执行操作,对保单进行处理。
对于有多个断点任务的情形,服务器可以对多个断点任务分配对应的进程,如果进程数量大于断点任务数量,则服务器还可以对未执行的任务分配进程,多个进程并发执行操作,对保单进行处理。
在多个进程从断点任务开始继续对未执行的任务进行并发操作时,可以参照上述实施例中的方式,由每个进程固定执行某个任务标识对应的任务,或者进程随机获取任务来执行。通过对断点任务通过查找断点任务,在断点任务开始继续执行,省去了对任务中的保单进行全量补执行的时间,有效防止任务的漏执行和误执行等,有效提高了保单处理效率。
进一步的,为了有效提高保单处理效率,服务器可以将已开始执行且尚未执行完毕的任务中尚未执行的保单作为进程从数据库中退出时对应的断点任务。服务器对断点任务分配对应的进程,该进程对断点任务中未执行的保单进行处理,服务器将其他进程分配给未执行的任务,多个进程执行并发操作,对保单进行处理。如果数据库中存在多个已开始执行且尚未执行完毕的任务,可以将已开始执行且尚未执行完毕的任务中未执行的保单分别作为断点任务。服务器对多个断点任务分别分配对应的进程,如果进程数量大于断点任务数量,则服务器还可以对未执行任务分配进程,多个进程并发执行操作,对保单进行处理。
在一个实施例中,如图2所示,提供了一种服务器,包括通过系统总线连接的处理器、内存储器、非易失性存储介质和网络接口。其中,该服务器的非易失性存储介质中存储有操作系统和保单处理的优化装置,保单处理的优化装置用于实现进程从数据库中退出后可以在断点任务继续开始执行操作,有效提高了保单处理的效率。服务器的处理器用于提供计算和控制能力,被配置为执行一种保单处理的优化方法。
在一个实施例中,如图3所示,提供了一种保单处理的优化装置,包括:任务生成模块302、任务执行模块304、记录模块306和断点续执行模块308,其中:
任务生成模块302,用于抓取保单,利用抓取到的保单生成多个任务。
任务执行模块304,用于运行多个进程对任务执行并发操作。
记录模块306,用于记录任务的执行状况。
断点续执行模块308,用于当多个进程退出后再次运行执行任务时,根据任务的执行状况查找多个进程在退出时对应的断点任务,多个进程从断点任务开始继续执行并发操作。
本实施例中,任务生成模块302在数据库中抓取待处理的保单。任务生成模块302抓取到的保单可以是多个险种的保单。由于每个险种的保单数量较多,任务生成模块302可以对抓取到的保单生成多个任务。
在一个实施例中,任务生成模块302还用于根据机构标识获取对应的多个险种;利用险种对应的保单生成对应的任务。
任务执行模块304通过多个进程可以在数据库中对任务执行并发操作,按照预设的逻辑对保单进行处理。记录模块306对保单处理中的各个步骤增加日志监控。通过日志来记录每个步骤的执行状况。多个日志来生成对应的日志表。一旦在保单处理中出现问题,可以通过调用日志表快速定位到出错的位置。当多个进程在某个时刻从数据库中退出时,可能还没有对所有的任务执行完毕。需要再一次运行进程对尚未执行的任务继续进行并发操作。具体的,当多个进程再次运行时,断点续执行模块308根据日志表中记录的任务的执行状况查找出多个进程从数据库中退出时对应的断点任务。从断点任务开始,多个进程再次继续执行并发操作,按照预设的逻辑对保单进行处理。
本实施例中,利用抓取到的保单生成多个任务,通过运行多个进程对任务执行并发操作,并且对任务的执行状况进行记录。当多个进程退出后再次运行执行任务时,不需要对所有的任务重新执行。可以根据任务的执行状况查找多个进程在退出时对应的断点任务,使得多个进程从断点任务开始继续执行并发操作。由此省去了对任务中的保单进行全量补执行的时间,而且通过查找断点任务,在断点任务开始继续执行,有效防止任务的漏执行和误执行等,有效提高了保单处理效率。
在一个实施例中,任务执行模块304还用于获取任务标识,根据任务标识对任务进行分组,得到多个任务组;对任务组分配对应的进程;多个进程根据对应的任务组执行并发操作。
本实施例中,每个任务都具有唯一的任务标识。任务执行模块304获取任务标识,根据任务标识对任务进行分组,得到多个任务组。任务执行模块304对每个任务组分配对应的进程。也就是说,每个进程会固定执行对应的任务组中的任务。多个进程根据对应的任务组执行并发操作,对保单进行处理。本实施例中,由于进程固定执行某个任务标识对应的任务,因此容易发现任务执行过程中出现的异常,维护成本较低。
在一个实施例中,任务执行模块304还用于多个进程随机获取任务,执行并发操作;在任务执行完之后,进程随机获取下一个任务进行对应操作。
本实施例中,进程不会固定执行某个任务,可以随机获取任务来执行。任务执行模块304用于多个进程随机获取任务,执行并发操作,对保单进行处理。在进程处理完一个任务后,可以自行随机获取下一个任务来执行。由于不需要进程固定执行某个任务,因此能够有效缩短执行任务的耗时。
在一个实施例中,断点续执行模块308还用于调用日志表,日志表中记录了任务执行状况;根据任务执行状况在日志表中查找已开始执行且尚未执行完毕的任务;将已开始执行且尚未执行完毕的任务作为多个进程从数据库中退出时对应的断点任务。
本实施例中,当多个进程从数据库中退出时,在日志表中记录了任务的执行状况。由于保单数据庞大,多个进程无法一次性将所有的保单处理完,因此数据库中可能会存在已经开始执行且尚未执行完毕的任务。断点续执行模块308根据日志表中记录的任务执行状况,在日志表中查找已经开始执行且尚未执行完毕的任务。断点续执行模块308将查找到的已经开始执行且尚未执行完毕的任务作为多个进程从数据库中退出时对应的断点任务。
由于多个进程对任务执行并发操作,因此,数据库中可能会有多个已经开始执行且尚未执行完毕的任务。断点续执行模块308可以将这多个已经开始执行且尚未执行完毕的任务作为多个进程从数据库中退出时对应的多个断点任务。通过调用日志表,根据日志表中记录的任务执行状况,能够快速准确定位到断点任务,有效提高了数据准确性。
在一个实施例中,断点续执行模块308还用于根据日志表获取已开始执行且尚未执行完毕的任务中未执行的保单;将未执行的保单作为进程从数据库中退出时对应的断点任务。
本实施例中,断点续执行模块308在查找出断点任务后,可以利用进程对断点任务补执行。每个任务中的保单数据较多,由于断点任务中的部分保单已被处理,如果进程对断点任务中的保单进行全量补执行的话,则会对之前的工作造成浪费,使得保单处理的耗时增长。为了有效提高保单处理效率,断点续执行模块308可以根据日志表的记录获取已开始执行且尚未执行完毕的任务中尚未执行的保单,将这些未执行的保单作为进程从数据库中退出时对应的断点任务。
进一步的,如果在数据库中查找到多个已经开始执行且尚未执行完毕的任务,断点续执行模块308可以根据日志表的记录分别获取每个已经开始执行且尚未执行完毕的任务中尚未执行的保单,将未执行的保单作为多个进程从数据库中退出时对应的断点任务。
在一个实施例中,断点续执行模块308还用于调用任务表,任务表中记录了所有的任务;根据日志表确定任务表中未执行的任务;利用多个进程从断点任务开始继续对未执行的任务进行并发操作。
本实施例中,断点续执行模块308在查找到断点任务后,调用任务表,根据日志表中记录的任务的执行状况来确定任务表中执行完毕的任务和未执行的任务。断点续执行模块308根据任务编号从断点任务开始查看下一个任务是否已执行完,若是,则跳至下一个任务,直至查到未执行的任务继续开始执行。多个进程继续执行并发操作,对保单进行处理。
在多个进程从断点任务开始继续对未执行的任务进行并发操作时,可以参照上述实施例中的方式,由每个进程固定执行某个任务标识对应的任务,或者进程随机获取任务来执行。通过对断点任务通过查找断点任务,在断点任务开始继续执行,省去了对任务中的保单进行全量补执行的时间,有效防止任务的漏执行和误执行等,有效提高了保单处理效率。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种保单处理的优化方法,所述方法包括以下步骤:
抓取保单,利用抓取到的保单生成多个任务;
运行多个进程对所述任务执行并发操作;
记录所述任务的执行状况;
当所述多个进程退出后再次运行执行任务时,根据所述任务的执行状况查找多个进程在退出时对应的断点任务,所述多个进程从所述断点任务开始继续执行并发操作。
2.根据权利要求1所述的方法,其特征在于,所述利用抓取到的保单生成多个任务的步骤包括:
根据机构标识获取对应的多个险种;
利用所述险种对应的保单生成对应的任务。
3.根据权利要求1所述的方法,其特征在于,所述运行多个进程对所述任务执行并发操作的步骤包括:
获取任务标识,根据所述任务标识对任务进行分组,得到多个任务组;
对所述任务组分配对应的进程;
多个进程根据对应的任务组执行并发操作。
4.根据权利要求1所述的方法,其特征在于,所述运行多个进程对所述任务执行并发操作的步骤包括:
多个进程随机获取任务,执行并发操作;
在任务执行完之后,进程随机获取下一个任务进行对应操作。
5.根据权利要求1所述的方法,其特征在于,所述根据所述任务的执行状况查找多个进程在退出时对应的断点任务的步骤包括:
调用日志表,所述日志表中记录了任务执行状况;
根据所述任务执行状况在所述日志表中查找已开始执行且尚未执行完毕的任务;
将所述已开始执行且尚未执行完毕的任务作为所述多个进程从数据库中退出时对应的断点任务。
6.根据权利要求5所述的方法,其特征在于,所述将所述已开始执行且尚未执行完毕的任务作为所述进程从数据库中退出时对应的断点任务的步骤包括:
根据所述日志表获取所述已开始执行且尚未执行完毕的任务中未执行的保单;
将所述未执行的保单作为所述进程从数据库中退出时对应的断点任务。
7.根据权利要求5所述的方法,其特征在于,所述多个进程从所述断点任务开始继续执行并发操作的步骤包括:
调用任务表,所述任务表中记录了所有的任务;
根据所述日志表确定所述任务表中未执行的任务;
利用多个进程从所述断点任务开始继续对未执行的任务进行并发操作。
8.一种保单处理的优化装置,其特征在于,所述装置包括:
任务生成模块,用于抓取保单,利用抓取到的保单生成多个任务;
任务执行模块,用于运行多个进程对所述任务执行并发操作;
记录模块,用于记录所述任务的执行状况;
断点续执行模块,用于当所述多个进程退出后再次运行执行任务时,根据所述任务的执行状况查找多个进程在退出时对应的断点任务,所述多个进程从所述断点任务开始继续执行并发操作。
9.根据权利要求8所述的装置,其特征在于,所述断点续执行模块还用于调用日志表,所述日志表中记录了任务执行状况;根据所述任务执行状况在所述日志表中查找已开始执行且尚未执行完毕的任务;将所述已开始执行且尚未执行完毕的任务作为所述多个进程从数据库中退出时对应的断点任务。
10.根据权利要求9所述的装置,其特征在于,所述断点续执行模块还用于调用任务表,所述任务表中记录了所有的任务;根据所述日志表确定所述任务表中未执行的任务;利用多个进程从所述断点任务开始继续对未执行的任务进行并发操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610187054.2A CN107239327A (zh) | 2016-03-29 | 2016-03-29 | 保单处理的优化方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610187054.2A CN107239327A (zh) | 2016-03-29 | 2016-03-29 | 保单处理的优化方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107239327A true CN107239327A (zh) | 2017-10-10 |
Family
ID=59983373
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610187054.2A Pending CN107239327A (zh) | 2016-03-29 | 2016-03-29 | 保单处理的优化方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107239327A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111078684A (zh) * | 2019-11-08 | 2020-04-28 | 泰康保险集团股份有限公司 | 保单故障的补偿方法、装置、介质及设备 |
WO2020087983A1 (zh) * | 2018-10-29 | 2020-05-07 | 平安医疗健康管理股份有限公司 | 任务分配方法、装置、设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101149682A (zh) * | 2007-10-31 | 2008-03-26 | 金蝶软件(中国)有限公司 | 一种日构建方法、装置及系统 |
CN101419615A (zh) * | 2008-12-10 | 2009-04-29 | 阿里巴巴集团控股有限公司 | 一种前后台数据库的同步方法及装置 |
CN101425024A (zh) * | 2008-10-24 | 2009-05-06 | 中国移动通信集团山东有限公司 | 一种多任务处理方法及装置 |
US20110289503A1 (en) * | 2010-05-18 | 2011-11-24 | Microsoft Corporation | Extensible task scheduler |
CN103067468A (zh) * | 2012-12-22 | 2013-04-24 | 深圳先进技术研究院 | 云调度方法及其系统 |
CN104281636A (zh) * | 2014-05-05 | 2015-01-14 | 神华集团有限责任公司 | 海量报表数据并发分布式处理方法 |
-
2016
- 2016-03-29 CN CN201610187054.2A patent/CN107239327A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101149682A (zh) * | 2007-10-31 | 2008-03-26 | 金蝶软件(中国)有限公司 | 一种日构建方法、装置及系统 |
CN101425024A (zh) * | 2008-10-24 | 2009-05-06 | 中国移动通信集团山东有限公司 | 一种多任务处理方法及装置 |
CN101419615A (zh) * | 2008-12-10 | 2009-04-29 | 阿里巴巴集团控股有限公司 | 一种前后台数据库的同步方法及装置 |
US20110289503A1 (en) * | 2010-05-18 | 2011-11-24 | Microsoft Corporation | Extensible task scheduler |
CN103067468A (zh) * | 2012-12-22 | 2013-04-24 | 深圳先进技术研究院 | 云调度方法及其系统 |
CN104281636A (zh) * | 2014-05-05 | 2015-01-14 | 神华集团有限责任公司 | 海量报表数据并发分布式处理方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020087983A1 (zh) * | 2018-10-29 | 2020-05-07 | 平安医疗健康管理股份有限公司 | 任务分配方法、装置、设备及存储介质 |
CN111078684A (zh) * | 2019-11-08 | 2020-04-28 | 泰康保险集团股份有限公司 | 保单故障的补偿方法、装置、介质及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106980636A (zh) | 保单数据处理方法和装置 | |
Lin et al. | Minimization of total tardiness on unrelated parallel machines with sequence-and machine-dependent setup times under due date constraints | |
Pal et al. | An experimental approach towards big data for analyzing memory utilization on a hadoop cluster using HDFS and MapReduce | |
Kanoun et al. | Reliability growth of fault-tolerant software | |
CN110083533A (zh) | 基于Mock服务的数据处理方法及装置 | |
CN107239327A (zh) | 保单处理的优化方法和装置 | |
CN104991836B (zh) | 恢复数据库的方法、装置及数据库服务器 | |
CN112115117B (zh) | 一种覆盖数据全生命周期的大数据区块链权限管理方法和系统 | |
CN107644382A (zh) | 保单信息统计方法和装置 | |
CN110377519B (zh) | 大数据系统的性能容量测试方法、装置、设备及存储介质 | |
CN108920523A (zh) | 区块链上数据查询方法、装置、设备、系统及介质 | |
CN113220597B (zh) | 测试方法、测试装置、电子设备及存储介质 | |
CN111078510B (zh) | 一种任务处理进度的记录方法及装置 | |
Estefó et al. | Code duplication in ROS launchfiles | |
CN108491300A (zh) | 一种基于分布式的日志处理系统 | |
CN108073447A (zh) | 基于多应用下的异步保险任务处理方法和装置 | |
KR20100022171A (ko) | 스레드 지향 로깅 시스템에서 로그 저장 방법 및 장치 | |
CN108121605A (zh) | 一种基于yarn的cgroup内存控制优化方法及系统 | |
Zhou et al. | Pagoda: Pay-as-you-go abox reasoning | |
CN103970854B (zh) | Sap ecc端与sap bw端之间增量凭证信息同步方法 | |
CN110442508B (zh) | 测试任务处理方法、装置、设备和介质 | |
KR101113690B1 (ko) | 활동 정보 분석 장치 및 그 방법 | |
CN106406845A (zh) | 一种任务处理方法及装置 | |
CN113535696B (zh) | 一种数据清洗方法、装置、电子设备和介质 | |
Chen et al. | Flexible flow line scheduling problems with re-entrant flows and queue-time constraints |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20171010 |