CN104092794A - 批量进程处理方法和系统 - Google Patents

批量进程处理方法和系统 Download PDF

Info

Publication number
CN104092794A
CN104092794A CN201410360579.2A CN201410360579A CN104092794A CN 104092794 A CN104092794 A CN 104092794A CN 201410360579 A CN201410360579 A CN 201410360579A CN 104092794 A CN104092794 A CN 104092794A
Authority
CN
China
Prior art keywords
application server
batch process
address
described pending
batch
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.)
Granted
Application number
CN201410360579.2A
Other languages
English (en)
Other versions
CN104092794B (zh
Inventor
蔡凌玮
韦东俊
邓校锋
万旭
毛淑平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN201410360579.2A priority Critical patent/CN104092794B/zh
Publication of CN104092794A publication Critical patent/CN104092794A/zh
Application granted granted Critical
Publication of CN104092794B publication Critical patent/CN104092794B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Computer And Data Communications (AREA)

Abstract

本发明提供了一种批量进程处理方法和系统,其中,该方法包括:获取预先为待处理批量进程分配的应用服务器的IP地址;在确定获取的IP地址与本台应用服务器的IP地址相同的情况下,在本台应用服务器上启动所述待处理批量进程。本发明解决了现有技术中,在数据结构的层面划分批量进程而导致的系统实现起来比较复杂,且可扩展性不高的技术问题,达到了有效降低系统复杂度,提高批量进程处理效率的技术效果。

Description

批量进程处理方法和系统
技术领域
本发明涉及数据处理技术领域,特别涉及一种批量进程处理方法和系统。
背景技术
在大型的企业数据处理系统中,经常会涉及到对批量进程的处理,在高可用性方面主要有以下两种方式:冷备模式和负载均衡模式。
在冷备模式下,只有一台应用服务器处于运行状态:
1)如果同一时段仅启动一个批量进程,则通过操作系统进程查看指令,先查看该批量进程是否存在,如不存在则启动该批量进程,否则不启动该批量进程;
2)如果同时启动多个批量进程,则设定每个批量进程之间处理的业务数据不同,即,需要提前在数据结构上规划每个批量进程分别处理哪些数据,例如按照地区号进行划分,不同的批量进程处理不同地区的数据。
在负载均衡模式下,多台应用服务器处于运行状态:
1)如果同一时段仅启动一个批量进程,则只能通过人工方式确认只在一台应用服务器上运行了该批量进程;
2)如果同时启动多个批量进程,则可以通过参数化配置确保在不同应用服务器上运行的同一批量进程所处理的业务数据不同。
上述无论是在冷备模式下,还是在负载均衡模式下,如果同一时段仅启动一个批量进程都需要人工进行控制,没有在系统层面实现硬控制,存在一定的风险。如果同时启动多个批量进程,则需要在系统设计阶段就确定批量进程的分区模型,提炼数据分区的要素并确定分区的规则,以便批量进程可以根据该规则进行相应的设置使得不同的批量进程处理不同的数据、或者是不同应用服务器上的同一批量进程处理不同的数据。因此,对于同时启动多个批量进程的方式,必然会导致系统设计变得相对复杂,实现起来比较繁琐,如果后续增加批量进程就需要在应用层面做相应的改动,扩展性和灵活性不高。
发明内容
本发明实施例提供了一种批量进程处理方法,以达到有效提高批量进程的处理效率的目的,该方法包括:
获取预先为待处理批量进程分配的应用服务器的IP地址;
在确定获取的IP地址与本台应用服务器的IP地址相同的情况下,在本台应用服务器上启动所述待处理批量进程。
在一个实施例中,在本台应用服务器上启动所述待处理批量进程,包括:
确定在本台应用服务器上是否已经启动了所述待处理批量进程;
如果没有启动,则在本台应用服务器上启动所述待处理批量进程。
在一个实施例中,获取预先为待处理批量进程分配的应用服务器的IP地址,包括:
从批量进程控制表中获取为所述待处理批量进程分配的应用服务器的IP地址,其中,所述批量进程表中记录有至少一个批量进程的进程名和为记录的批量进程分配的应用服务器的IP地址。
在一个实施例中,从批量进程控制表中获取为所述待处理批量进程分配的应用服务器的IP地址,包括:
确定所述批量进程控制表中是否记录有所述待处理批量进程的进程名;
如果有,则直接从所述批量进程控制表中获取为所述待处理批量进程分配的应用服务器的IP地址,否则,则将所述待处理批量进程的进程名写入所述批量进程控制表中,并将本台应用服务器的IP地址作为为所述待处理批量进程分配的应用服务器的IP地址。
在一个实施例中,在本台应用服务器上启动所述待处理批量进程,包括:
本台应用服务器的流量控制单元从所述批量进程控制表中获取预先为所述待处理批量进程设置的每次发送数据报文的笔数限值;
本台应用服务器的数据分发单元按照获取的限值将所述待处理批量进程的数据报文发送至系统中各应用服务器;
系统中各应用服务器对接收到的数据报文进行处理。
在一个实施例中,本台应用服务器的数据分发单元按照获取的限值将所述待处理批量进程的数据报文发送至系统中各应用服务器,包括:
所述数据分发单元采用轮询的方式将从所述待处理批量进程的数据报文发送至系统中各应用服务器;
或者,所述数据分发单元采用随机分发的方式将从所述待处理批量进程的数据报文发送至系统中各应用服务器。
在一个实施例中,在本台应用服务器的数据分发单元按照获取的限值将所述待处理批量进程的数据报文发送至系统中各应用服务器之前,还包括:
本台应用服务器的数据获取单元扫描所述待处理批量进程的业务数据;
所述数据获取单元将扫描到的业务数据封装为包括包头和包体的数据报文。
本发明实施例还提供了一种批量进程处理系统,位于一台应用服务器中,以达到有效提高批量进程的处理效率的目的,该系统包括:
IP地址获取单元,用于获取预先为待处理批量进程分配的应用服务器的IP地址;
进程处理单元,用于在确定获取的IP地址与本台应用服务器的IP地址相同的情况下,在本台应用服务器上启动所述待处理批量进程。
在一个实施例中,所述进程处理单元具体用于在所述IP地址获取单元确定获取的IP地址与本台应用服务器的IP地址相同之后,确定在本台应用服务器上是否已经启动了所述待处理批量进程,如果没有启动,则在本台应用服务器上启动所述待处理批量进程。
在一个实施例中,所述IP地址获取单元具体用于从批量进程控制表中获取为所述待处理批量进程分配的应用服务器的IP地址,其中,所述批量进程表中记录有至少一个批量进程的进程名和为记录的批量进程分配的应用服务器的IP地址。
在一个实施例中,所述IP地址获取单元具体用于确定所述批量进程控制表中是否记录有所述待处理批量进程的进程名;如果有,则直接从所述批量进程控制表中获取为所述待处理批量进程分配的应用服务器的IP地址,否则,则将所述待处理批量进程的进程名写入所述批量进程控制表中,并将本台应用服务器的IP地址作为为所述待处理批量进程分配的应用服务器的IP地址。
在一个实施例中,所述进程处理单元包括:
流量控制单元,用于从所述批量进程控制表中获取预先为所述待处理批量进程设置的每次发送数据报文的笔数限值;
数据分发单元,用于按照获取的限值将所述待处理批量进程的数据报文发送至系统中各应用服务器;
所述应用服务器,用于对接收到的数据报文进行处理。
在一个实施例中,所述数据分发单元具体用于采用轮询的方式将从所述待处理批量进程的数据报文发送至系统中各应用服务器;或者,采用随机分发的方式将从所述待处理批量进程的数据报文发送至系统中各应用服务器。
在一个实施例中,上述系统还包括:
数据获取单元,用于在所述数据分发单元按照获取的限值将所述待处理批量进程的数据报文发送至系统中各应用服务器之前,扫描所述待处理批量进程的业务数据,并将扫描到的业务数据封装为包括包头和包体的数据报文。
在本发明实施例中,为每个待处理的批量进程设置了一个处理应用服务器,在执行的过程中,只需要判断为该批量进程进行分配的应用服务器的IP地址是否与本台应用服务器的IP地址相同,如果相同,那么就通过本台应用服务器对该批量进行处理,通过这种方式无需操作人员人工进行配置,应用服务器自己可以实现对批量进行处理,且对批量进行的配置比较简单,解决了现有技术中,在数据结构的层面划分批量进程而导致的系统实现起来比较复杂,且可扩展性不高的技术问题,达到了有效降低系统复杂度,提高批量进程处理效率的技术效果。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。在附图中:
图1是本发明实施例的批量进程处理方法的方法流程图;
图2是本发明实施例的批量进程处理系统的结构框图;
图3是本发明实施例的后台业务报文扫描装置的结构框图;
图4是本发明实施例的SOCKET通讯客户端装置的结构框图;
图5是本发明实施例的SOCKET通讯服务监听装置的结构框图;
图6是本发明实施例的联机业务报文处理装置的结构框图;
图7是本发明实施例的批量进程处理方法的具体方法流程图;
图8是本发明实施例的批量进程处理装置的结构框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施方式和附图,对本发明做进一步详细说明。在此,本发明的示意性实施方式及其说明用于解释本发明,但并不作为对本发明的限定。
在本发明实施例中提供了一种批量进程处理方法,如图1所示,包括以下步骤:
步骤101:获取预先为待处理批量进程分配的应用服务器的IP地址;
步骤102:在确定获取的IP地址与本台应用服务器的IP地址相同的情况下,在本台应用服务器上启动所述待处理批量进程。
在本发明实施例中,为每个待处理的批量进程设置了一个处理应用服务器,在执行的过程中,只需要判断为该批量进程进行分配的应用服务器的IP地址是否与本台应用服务器的IP地址相同,如果相同,那么就通过本台应用服务器对该批量进行处理,通过这种方式无需操作人员人工进行配置,应用服务器自己可以实现对批量进行处理,且对批量进行的配置比较简单,解决了现有技术中,在数据结构的层面划分批量进程而导致的系统实现起来比较复杂,且可扩展性不高的技术问题,达到了有效降低系统复杂度,提高批量进程处理效率的技术效果。
为了避免在同一应用服务器上重复运行同一批量进程,在确定获取的IP地址与本机(即上述的本台应用服务器)的IP地址相同之后,还可以包括:确定本机是否已经启动了该待处理批量进程;如果是,则产生提示信息,用于指示所述待处理批量进程已在本机运行;如果不是,则在本机上启动该待处理批量进程。即,在确定本机的IP地址与该待处理批量进程对应的IP地址相同的时候,再确定一下该批量进程是否已在该应用服务器上启动,如果已经启动,则提示:该批量进程已在本机启动,请勿重复启动,从而可以有效避免进程被重复启动,造成资源浪费的同时,也会产生数据的混乱。
上述步骤101:获取预先为待处理批量进程分配的应用服务器的IP地址,包括:从批量进程控制表中获取为所述待处理批量进程分配的应用服务器的IP地址,其中,所述批量进程表中记录有至少一个批量进程的进程名和为记录的批量进程分配的应用服务器的IP地址。即,设定一个批量进程控制表,在这个批量进程控制表中记录有各个批量进程的进程名,以及为各个批量进程分配的应用服务器的IP地址,在对某个批量进程进行处理的时候,只需要从这个批量进程控制表中查找其对应的IP地址,便可以确定当前应用服务器是否为该批量进程的处理应用服务器,这样可以有效实现对批量进程的统一管理。
考虑到有些时候可能有些批量进程并未在批量进程控制表中登记,因此,在查找的时候也就查不到它所对应的IP地址,为了使得这些新加入的批量进程,或者未进行登记的批量进程也可以被处理,在实施的过程中,在从批量进程控制表中获取为该待处理批量进程分配的应用服务器的IP地址之前,还包括:确定所述批量进程控制表中是否记录有所述待处理批量进程的进程名;如果有,则直接从所述批量进程控制表中获取为所述待处理批量进程分配的应用服务器的IP地址,否则,则将所述待处理批量进程的进程名写入所述批量进程控制表中,并将本台应用服务器的IP地址作为为所述待处理批量进程分配的应用服务器的IP地址。即,如果在批量进程登记表中未找到该待处理的批量进程,则将该批量进程添加到批量进程登记表中,将本机的IP地址设置为该待处理批量进程的IP地址。
具体的,在本机上启动所述待处理批量进程,可以包括:本台应用服务器的流量控制单元从所述批量进程控制表中获取预先为所述待处理批量进程设置的每次发送数据报文的笔数限值;本台应用服务器的数据分发单元按照获取的限值将所述待处理批量进程的数据报文发送至系统中的各个应用服务器;系统中的各个应用服务器对接收到的数据报文进行处理。在批量进程控制表中不仅有批量进程名、进程对应的IP地址,还有为批量进程设置的笔数限值,这主要是为了避免由于后台批量进程发送到前台的应用服务器的报文数量太多而导致前台无法及时响应而超时的问题设定的,可以有效的进行流量的控制,例如每次发送100笔,间歇1分钟,这些参数都可以预先进行设定,在执行的时候按照设定的参数执行即可。
因为系统中不仅有一台应用服务器,因此为了实现数据报文的均衡处理,在按照获取的限值将所述待处理批量进程的数据报文发送至本台应用服务器的时候,可是采用轮询的方式,或者是采用随机的方式将从所述待处理批量进程的数据报文发送至系统中的各个应用服务器,这两种方式总大方向上看都是可以实现数据报文被均衡的发送给各个应用服务器进行处理的目的。
具体实施时,在本台应用服务器的数据分发单元按照获取的限值将所述待处理批量进程的数据报文发送至系统中的各个应用服务器之前,还可以包括:本台应用服务器的数据获取单元扫描所述待处理批量进程的业务数据;数据获取单元将扫描到的业务数据封装为包括包头和包体的数据报文,上述生成的数据报文便是要发送到应用服务器的数据报文。
下面结合一个具体的实施例对上述的批量进程的处理方法进行说明,然而值得注意的是,该具体实施例仅是为了更好地说明本发明,并不构成对本发明的不当限定。
在本例中提供了一种简易的、可动态扩展的、易于维护的、前后台分离的批量进程的并发控制方法,该方法不仅可以实现批量进程的并发控制,而且可以在应用层面实现负载均衡。
在该方法中,将对批量进程的处理拆分为两个部分:一部分是业务数据扫描进程;另一部分是处理业务功能的服务。通过批量进程控制表将批量进程的进程名与IP地址进行绑定,通过数据库来控制每个批量进程只可在一台应用服务器上启动;在进程启动时,判断该批量进程是否已经启动来控制在同一台应用服务器上只启动了一个该批量进程。在确定在该应用服务器上启动该批量进程之后,将扫描得到的该批量进程的数据均匀的分发给系统中的各个应用服务器上进行处理,从而有效实现了各应用服务器的负载均衡。
在确定的应用服务器上对批量进程的数据报文进行处理可以是通过如图2所示的系统实现的,该系统包括:SOCKET通讯客户端装置2、SOCKET通讯服务端监听装置3、联机业务报文处理装置4,其中,SOCKET表示套接字,用于描述IP地址和端口,是一个通信链的句柄,下面对该系统进行具体说明。
后台业务报文扫描装置1,在该应用服务器上启动批量进程后,就需要对该批量进程对应的数据报文进行处理,后台业务报文扫描装置1就是用于进行数据报文扫描的。通讯客户端装置2,主要是作为SOCKET通讯客户端主动与其他应用服务器建立通讯连接。SOCKET通讯服务端监听装置3,用于启动监听服务监听后台批量进程发过来的业务报文信息。联机业务报文处理装置4,用于根据业务逻辑处理批量进程的数据报文。
上述后台业务报文扫描装置1通过扫描后台数据库获取待处理批量进程的数据报文后,将数据报文通过SOCKET通讯客户端装置2与SOCKET通讯服务端监听装置3之间建立的通讯连接将数据报文以自定义的报文格式发送至SOCKET通讯服务端监听装置3,SOCKET通讯服务端监听装置3将数据报文提交给联机业务报文处理装置4进行处理。
上述的后台业务报文扫描装置1包括:如图3所示,包括:配置处理装置10、进程并发检查装置11、数据扫描装置12、通讯数据包组包装置13,其中:
配置处理装置10主要用于参数的配置、保持和获取,配置处理装置10可以进一步包括配置编辑单元、配置保存单元和配置读取单元,其中,配置编辑单元用于编辑所需的配置,包括应用服务器集群IP、SOCKET通讯服务监听端口号、后台扫描流量控制笔数、后台批量进程一次获取的报文数、后台批量进程休眠时间等信息,配置保存单元包含配置保存文件和批量进程控制表,配置读取单元用于读取配置。
进程并发检查装置11,用于对批量进程的并发控制,包含:应用服务器进程配置检查单元、本机服务进程检查单元,其中,应用服务器进程配置检查单元通过批量进程控制表记录该批量进程的进程名以及应用服务器的IP来确保一个批量进程仅在一台应用服务器上启动,本机服务进程检查单元通过操作系统进程检查方法确保在本机上仅启动了一次该批量进程。
数据扫描装置12,用于获取待处理批量进程的数据报文,包含:数据获取单元、流量控制单元、数据分发单元,其中,数据获取单元通过批量进程控制表获取待处理批量进程的键值信息,为避免通讯数据量太大,只获取批量进程的键值信息,并将其发送至联机服务的SOCKET通讯服务监听装置3,然后由联机业务报文处理装置4根据业务报文的键值获取需要的字段信息。流量控制单元,用于进行流量控制,为避免由于批量进程发送到前台联机服务的报文数太多,而导致前台不能及时响应而超时,该单元需要进行流量控制,例如:每次发送100笔,间歇1秒钟,这些参数都可以通过配置处理装置10进行配置、保存和获取。数据分发单元是实现负载均衡的重要单元,通过该单元可以将数据报文均匀的分发至各应用服务器,在该装置中确定将扫描出的数据报文按照设定的发送笔数发送至本机的哪一台应用服务器,例如可以通过随机的策略或轮询的策略分发数据报文,所谓随机的策略就是将设定的笔数的数据报文通过随机算法产生的结果发往某一台应用服务器,而轮询的策略则是逐个应用服务器轮询发送。无论是随机算法或是轮询策略,每台应用服务器获得任务的机会都是均等的,发送的报文笔数都是一样的,因此数据分发单元保证了多台应用服务器得到的负载是完全均衡的,从而实现了负载均衡。
通讯数据组包装置13,包含:通讯数据包头组织单元和通讯数据包体组织单元,这两个单元分别用于根据批量进程与联机服务通讯协议组成通讯包头和通讯包体。其中,通讯包头包括:版本号和数据长度,通讯包体包括:数据体,这主要是按照协议进行设定即可。
上述的SOCKET通讯客户端装置2主要用于实例化SOCKET通讯客户端对象并与SOCKET通讯服务监听装置3建立通讯连接,如图4所示,包括:信息读取单元20和SOCKET通讯连接单元21。其中:
信息读取单元20,用于获取配置的联机服务监听端口号、SOCKET通讯超时时间等信息,SOCKET通讯连接单元21用于向联机SOCKET通讯服务端发起通讯连接。
上述的SOCKET通讯服务监听装置3用于监听SOCKET通讯客户端装置2的通讯服务连接并获取数据报文,然后将数据报文提交至联机业务报文处理装置4进行处理,如图5所示,包括:信息读取单元30和SOCKET通讯监听服务单元31。其中,信息读取单元30用于获取配置的联机服务监听端口号等信息,SOCKET通讯监听服务单元31用于在启动SOCKET监听服务后监听批量进程的连接请求。
上述的联机业务报文处理装置4用于对数据报文进行处理,是实现业务逻辑处理的核心装置,如图6所示,包括:通讯数据包解析装置40、报文处理线程池装置41、和业务报文处理装置42。通讯数据包解析装置40根据自定义通讯协议解析数据包,包括通讯数据包头解析装置和通讯数据包体解析装置,分别用于解析包头和包体。报文处理线程池装置41用于对于批量进程进行初始化、调度、管理以及监控,包括线程池调度管理单元和线程监控单元,线程池调度管理单元用于对线程进行初始化,负责对线程进行调度,按照配置控制线程池的大小,释放空闲的线程,线程监控单元负责对线程池中的工作线程进行监控,判断是否存在僵死线程,如果存在,则进行预警提示。
在SOCKET通讯客户端装置2和SOCKET通讯服务监听装置3进行通讯的过程中,系统还考虑了完善的异常处理策略,主要的策略是通过设置报文的中间状态来解决通讯超时或其他异常。例如:在后台业务报文扫描装置1获取到“待处理”的数据报文后,在将该数据报文通过SOCKET通讯客户端装置2发送前先将该数据报文更新为“后台正处理”的中间状态,SOCKET通讯服务监听装置3在获取到该数据报文后先将报文更新为“联机正处理”状态,然后回应SOCKET通讯客户端装置2。如果这个回应超时即SOCKET通讯客户端装置2和SOCKET通讯服务监听装置3之间的通讯超时,则后台业务报文扫描装置1会将该数据报文更新回“待处理”状态,为防止实际SOCKET通讯服务监听装置3已经将报文提交给联机业务报文处理装置4进行处理了,后台业务报文扫描装置1在将报文退回到“待处理”状态时需要判断该报文是否处于“后台正处理”状态。
基于上述的批量进程处理的系统,本例中还给出了一种批量进程的处理方法,如图7所示,包括以下步骤:
步骤701:启动批量进程时先通过配置处理装置10获取相关配置,包括:应用服务器集群IP、SOCKET通讯服务监听端口号、后台扫描流量控制笔数、后台批量进程一次获取的报文数、后台批量进程休眠时间等配置项;
步骤702:查询数据库批量进程控制表,获取该批量进程表中记录的该批量集成的进程名、启动该进程的应用服务器的IP等信息,在该表中可以将批量进程的进程名作为主键;
步骤703:进程并发检查装置11在获取到步骤702中查询到的数据后,判断批量进程控制表中是否存在该批量进程的记录;
步骤704:如果批量进程控制表中存在该批量进程的记录,则获取该批量进程对应的应用服务器的IP地址,并判断是否与本机的IP地址相同;
步骤705:如果,在批量进程控制表中不存在该批量进程的记录,则插入一条该批量进程的记录,包括:本机IP字段和进程名字段,插入并提交成功则继续处理,否则提示异常并退出启动过程;
步骤706:如果步骤704中判断出两者IP不相同,则表明该批量进程可能已经在其它应用服务器上启动了,则可以提示异常信息:“该批量进程应该在对应的IP上启动,不能在本机启动”;
步骤707:如果步骤704中判断两者IP相符,则进一步判断本机是否已启动该批量进程,以防止在该应用服务器上同时启动了多次该批量进程;
步骤708:如果本机已经启动,则提示:该批量进程已在本机启动,请勿重复启动;
步骤709:如果本机该批量进程没有运行,则启动该批量进程;
步骤710:数据扫描装置12从配置处理装置10获取到配置的相关配置信息后,数据获取单元扫描相关待处理的业务数据并获取业务数据的主键,并通过流量控制单元决定每次发送到应用服务器的报文笔数,数据分发单元决定发往哪一台应用服务器;
步骤711:SOCKET通讯客户端装置2的信息读取单元20根据通讯协议将数据扫描装置12获取的相关数据报文组成包括数据包包头和包体的通讯数据包;
步骤712:SOCKET通讯客户端装置2的SOCKET通讯连接单元21将通讯数据包发往数据扫描装置12指定的应用服务器的SOCKET通讯服务监听装置3;
步骤713:SOCKET通讯服务监听装置3获取SOCKET通讯客户端装置2发过来的通讯数据包后提交给联机业务报文处理装置4进行处理;
步骤714:联机业务报文处理装置4根据通讯协议报解析装置解析数据报文;
步骤715:将数据报文提交给对应的报文处理线程池进行处理;
步骤716:报文处理线程进行相应的业务逻辑处理。
在本例中,可以在应用服务器集群中通过简单的配置实现批量进程的并发控制,通过将业务处理功能拆分为后台批量进程和联机报文处理服务两个部分,实现了批量进程处理的负载均衡,解决了进程并发处理的问题,同时也实现了负载均衡。同时在数据通讯的过程中充分考虑了通讯超时等异常情况,完备的处理了后台批量与联机服务之间的报文状态同步问题。
基于同一发明构思,本发明实施例中还提供了一种批量进程处理系统,如下面的实施例所述。由于批量进程处理系统解决问题的原理与批量进程处理方法相似,因此批量进程处理系统的实施可以参见批量进程处理方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。图8是本发明实施例的批量进程处理系统的一种结构框图,如图8所示,包括:IP地址获取单元801、进程处理单元802,下面对该结构进行说明。
IP地址获取单元801,用于获取预先为待处理批量进程分配的应用服务器的IP地址;
进程处理单元802,用于在确定获取的IP地址与本台应用服务器的IP地址相同的情况下,在本台应用服务器上启动所述待处理批量进程。
在一个实施例中,进程处理单元802具体用于在所述IP地址获取单元确定获取的IP地址与本台应用服务器的IP地址相同之后,确定在本台应用服务器上是否已经启动了所述待处理批量进程,如果没有启动,则在本台应用服务器上启动所述待处理批量进程。
在一个实施例中,IP地址获取单元801具体用于从批量进程控制表中获取为所述待处理批量进程分配的应用服务器的IP地址,其中,所述批量进程表中记录有至少一个批量进程的进程名和为记录的批量进程分配的应用服务器的IP地址。
在一个实施例中,IP地址获取单元801具体用于确定所述批量进程控制表中是否记录有所述待处理批量进程的进程名;如果有,则直接从所述批量进程控制表中获取为所述待处理批量进程分配的应用服务器的IP地址,否则,则将所述待处理批量进程的进程名写入所述批量进程控制表中,并将本台应用服务器的IP地址作为为所述待处理批量进程分配的应用服务器的IP地址。
在一个实施例中,进程处理单元802包括:流量控制单元,用于从所述批量进程控制表中获取预先为所述待处理批量进程设置的每次发送数据报文的笔数限值;数据分发单元,用于按照获取的限值将所述待处理批量进程的数据报文发送至本台应用服务器的应用服务器;所述应用服务器,用于对接收到的数据报文进行处理。
在一个实施例中,数据分发单元具体用于采用轮询的方式将从所述待处理批量进程的数据报文发送至系统中各应用服务器;或者,采用随机分发的方式将从所述待处理批量进程的数据报文发送至系统中各应用服务器。
在一个实施例中,上述系统还包括:数据获取单元,用于在所述数据分发单元按照获取的限值将所述待处理批量进程的数据报文发送至系统中各应用服务器之前,扫描所述待处理批量进程的业务数据,并将扫描到的业务数据封装为包括包头和包体的数据报文。
在另外一个实施例中,还提供了一种软件,该软件用于执行上述实施例及优选实施方式中描述的技术方案。
在另外一个实施例中,还提供了一种存储介质,该存储介质中存储有上述软件,该存储介质包括但不限于:光盘、软盘、硬盘、可擦写存储器等。
从以上的描述中,可以看出,本发明实施例实现了如下技术效果:为每个待处理的批量进程设置了一个处理应用服务器,在执行的过程中,只需要判断为该批量进程进行分配的应用服务器的IP地址是否与本台应用服务器的IP地址相同,如果相同,那么就通过本台应用服务器对该批量进行处理,通过这种方式无需操作人员人工进行配置,应用服务器自己可以实现对批量进行处理,且对批量进行的配置比较简单,解决了现有技术中,在数据结构的层面划分批量进程而导致的系统实现起来比较复杂,且可扩展性不高的技术问题,达到了有效降低系统复杂度,提高批量进程处理效率的技术效果。
显然,本领域的技术人员应该明白,上述的本发明实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明实施例不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (14)

1.一种批量进程处理方法,其特征在于,包括:
获取预先为待处理批量进程分配的应用服务器的IP地址;
在确定获取的IP地址与本台应用服务器的IP地址相同的情况下,在本台应用服务器上启动所述待处理批量进程。
2.如权利要求1所述的方法,其特征在于,在本台应用服务器上启动所述待处理批量进程,包括:
确定在本台应用服务器上是否已经启动了所述待处理批量进程;
如果没有启动,则在本台应用服务器上启动所述待处理批量进程。
3.如权利要求1所述的方法,其特征在于,获取预先为待处理批量进程分配的应用服务器的IP地址,包括:
从批量进程控制表中获取为所述待处理批量进程分配的应用服务器的IP地址,其中,所述批量进程表中记录有至少一个批量进程的进程名和为记录的批量进程分配的应用服务器的IP地址。
4.如权利要求3所述的方法,其特征在于,从批量进程控制表中获取为所述待处理批量进程分配的应用服务器的IP地址,包括:
确定所述批量进程控制表中是否记录有所述待处理批量进程的进程名;
如果有,则直接从所述批量进程控制表中获取为所述待处理批量进程分配的应用服务器的IP地址,否则,则将所述待处理批量进程的进程名写入所述批量进程控制表中,并将本台应用服务器的IP地址作为为所述待处理批量进程分配的应用服务器的IP地址。
5.如权利要求3所述的方法,其特征在于,在本台应用服务器上启动所述待处理批量进程,包括:
本台应用服务器的流量控制单元从所述批量进程控制表中获取预先为所述待处理批量进程设置的每次发送数据报文的笔数限值;
本台应用服务器的数据分发单元按照获取的限值将所述待处理批量进程的数据报文发送至系统中各应用服务器;
系统中各应用服务器对接收到的数据报文进行处理。
6.如权利要求5所述的方法,其特征在于,本台应用服务器的数据分发单元按照获取的限值将所述待处理批量进程的数据报文发送至系统中各应用服务器,包括:
所述数据分发单元采用轮询的方式将从所述待处理批量进程的数据报文发送至系统中各应用服务器;
或者,所述数据分发单元采用随机分发的方式将从所述待处理批量进程的数据报文发送至系统中各应用服务器。
7.如权利要求5所述的方法,其特征在于,在本台应用服务器的数据分发单元按照获取的限值将所述待处理批量进程的数据报文发送至系统中各应用服务器之前,还包括:
本台应用服务器的数据获取单元扫描所述待处理批量进程的业务数据;
所述数据获取单元将扫描到的业务数据封装为包括包头和包体的数据报文。
8.一种批量进程处理系统,其特征在于,位于一台应用服务器中,包括:
IP地址获取单元,用于获取预先为待处理批量进程分配的应用服务器的IP地址;
进程处理单元,用于在确定获取的IP地址与本台应用服务器的IP地址相同的情况下,在本台应用服务器上启动所述待处理批量进程。
9.如权利要求8所述的系统,其特征在于,所述进程处理单元具体用于在所述IP地址获取单元确定获取的IP地址与本台应用服务器的IP地址相同之后,确定在本台应用服务器上是否已经启动了所述待处理批量进程,如果没有启动,则在本台应用服务器上启动所述待处理批量进程。
10.如权利要求8所述的系统,其特征在于,所述IP地址获取单元具体用于从批量进程控制表中获取为所述待处理批量进程分配的应用服务器的IP地址,其中,所述批量进程表中记录有至少一个批量进程的进程名和为记录的批量进程分配的应用服务器的IP地址。
11.如权利要求10所述的系统,其特征在于,所述IP地址获取单元具体用于确定所述批量进程控制表中是否记录有所述待处理批量进程的进程名;如果有,则直接从所述批量进程控制表中获取为所述待处理批量进程分配的应用服务器的IP地址,否则,则将所述待处理批量进程的进程名写入所述批量进程控制表中,并将本台应用服务器的IP地址作为为所述待处理批量进程分配的应用服务器的IP地址。
12.如权利要求10所述的系统,其特征在于,所述进程处理单元包括:
流量控制单元,用于从所述批量进程控制表中获取预先为所述待处理批量进程设置的每次发送数据报文的笔数限值;
数据分发单元,用于按照获取的限值将所述待处理批量进程的数据报文发送至系统中各应用服务器;
所述应用服务器,用于对接收到的数据报文进行处理。
13.如权利要求12所述的系统,其特征在于,所述数据分发单元具体用于采用轮询的方式将从所述待处理批量进程的数据报文发送至系统中各应用服务器;或者,采用随机分发的方式将从所述待处理批量进程的数据报文发送至系统中各应用服务器。
14.如权利要求12所述的系统,其特征在于,还包括:
数据获取单元,用于在所述数据分发单元按照获取的限值将所述待处理批量进程的数据报文发送至系统中各应用服务器之前,扫描所述待处理批量进程的业务数据,并将扫描到的业务数据封装为包括包头和包体的数据报文。
CN201410360579.2A 2014-07-25 2014-07-25 批量进程处理方法和系统 Active CN104092794B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410360579.2A CN104092794B (zh) 2014-07-25 2014-07-25 批量进程处理方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410360579.2A CN104092794B (zh) 2014-07-25 2014-07-25 批量进程处理方法和系统

Publications (2)

Publication Number Publication Date
CN104092794A true CN104092794A (zh) 2014-10-08
CN104092794B CN104092794B (zh) 2017-08-11

Family

ID=51640474

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410360579.2A Active CN104092794B (zh) 2014-07-25 2014-07-25 批量进程处理方法和系统

Country Status (1)

Country Link
CN (1) CN104092794B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104519062A (zh) * 2014-12-17 2015-04-15 深圳市航盛电子股份有限公司 一种创建多对socket端口连接的方法及系统
CN110362401A (zh) * 2019-06-20 2019-10-22 深圳壹账通智能科技有限公司 数据跑批方法、装置、存储介质及集群中的成员主机
CN115964181A (zh) * 2023-03-10 2023-04-14 之江实验室 一种数据处理的方法、装置、存储介质及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101446906A (zh) * 2008-12-31 2009-06-03 中国建设银行股份有限公司 一种多批处理任务的调度方法及系统
CN102045397A (zh) * 2010-12-20 2011-05-04 福建星网视易信息系统有限公司 Telnet登录嵌入式终端以进行调试的方法及设备
CN102609356A (zh) * 2012-01-19 2012-07-25 福建升腾资讯有限公司 终端产品驱动加载稳定性测试方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101446906A (zh) * 2008-12-31 2009-06-03 中国建设银行股份有限公司 一种多批处理任务的调度方法及系统
CN102045397A (zh) * 2010-12-20 2011-05-04 福建星网视易信息系统有限公司 Telnet登录嵌入式终端以进行调试的方法及设备
CN102609356A (zh) * 2012-01-19 2012-07-25 福建升腾资讯有限公司 终端产品驱动加载稳定性测试方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104519062A (zh) * 2014-12-17 2015-04-15 深圳市航盛电子股份有限公司 一种创建多对socket端口连接的方法及系统
CN110362401A (zh) * 2019-06-20 2019-10-22 深圳壹账通智能科技有限公司 数据跑批方法、装置、存储介质及集群中的成员主机
CN115964181A (zh) * 2023-03-10 2023-04-14 之江实验室 一种数据处理的方法、装置、存储介质及电子设备

Also Published As

Publication number Publication date
CN104092794B (zh) 2017-08-11

Similar Documents

Publication Publication Date Title
CN105373428B (zh) 一种任务调度方法和系统
CN110719209B (zh) 一种集群网络配置方法、系统、设备及可读存储介质
CN108287751A (zh) 任务执行方法及装置、分布式系统
CN107451147A (zh) 一种kafka集群动态切换的方法和装置
CN110611707B (zh) 一种任务调度的方法及装置
CN101777008A (zh) 移动终端系统线程池实现方法及装置
CN111597061A (zh) 一种客户端或服务端进行远程过程调用方法及装置
CN109120444B (zh) 云资源管理方法、处理器以及存储介质
CN109348434B (zh) 一种场景信息的发送方法、发送装置及终端设备
CN104092794A (zh) 批量进程处理方法和系统
CN106559447A (zh) Jslee容器的业务处理方法及系统
CN115248692A (zh) 一种支持多种深度学习框架模型云端部署的装置及方法
CN112866342A (zh) 一种面向钢铁行业的分布式数据采集系统及方法
CN105099774A (zh) 一种路由器软件升级方法及系统
CN113467931B (zh) 算力任务的处理方法、装置及系统
CN107025126B (zh) 一种资源调度方法、nfvo和系统
CN110532060A (zh) 一种混合网络环境数据采集方法及系统
CN111752675B (zh) 一种基于容器化技术的物联网平台
CN113658351A (zh) 一种产品生产的方法、装置、电子设备及存储介质
CN105930181A (zh) 基于插件机制的运行时界面集成方法
CN112003931A (zh) 一种编排控制器部署方法、系统及相关组件
CN109993379B (zh) 考勤异常处理方法、考勤管理系统及计算机可读存储介质
CN101247401B (zh) 基于消息驱动的状态机处理方法和装置
CN113127289B (zh) 一种基于yarn集群的资源管理方法、计算机设备和存储介质
CN113535402A (zh) 基于5g mec的负载均衡处理方法、装置及电子设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant