基于微服务的分布式批量处理方法、系统及注册中心技术方案

技术编号:36502424 阅读:19 留言:0更新日期:2023-02-01 15:25
本发明专利技术公开了一种基于微服务的分布式批量处理方法、系统及注册中心,应用于分布式技术领域,该方法包括:服务消费者在检测到满足预设批处理任务触发条件时,发起批处理请求至服务注册中心;服务注册中心根据当前批处理服务的标识,以及预先存储的多个批处理服务的标识与多个指令的关系,确定当前批处理服务的标识对应的当前多个指令;根据当前每一指令的服务标识,确定处理当前批处理任务的多个微服务;根据当前每一指令的数据区,反序列化对应的微服务实例;通过调用微服务实例,将调用指令发送至多个微服务分布的机器执行。本发明专利技术可以提高批量加工程序在单机运行的工作效率、改善无法扩展的问题。善无法扩展的问题。善无法扩展的问题。

【技术实现步骤摘要】
基于微服务的分布式批量处理方法、系统及注册中心


[0001]本专利技术涉及分布式
,尤其涉及基于微服务的分布式批量处理方法、系统及注册中心。

技术介绍

[0002]本部分旨在为权利要求书中陈述的本专利技术实施例提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
[0003]目前,由于传统批量加工程序一般由若干业务动作按顺序依次执行,如:数据抽取、清洗、转换、加载等业务步骤,通常都是在单机运行,当遇到数据量大时,单机受cpu、内存、磁盘等硬件资源限制存在运行时间长、计算能力扩展困难,一批量下划款业务,批量程序循环读取下划款文件的每条记录,对每条记录进行清洗、转换,提取为业务数据,调用划款处理逻辑,完成一笔划款业务,当下划款文件有上百万、上千万记录时,即使使用多线程机制单机处理时间往往需要几个小时,甚至十几个小时。

技术实现思路

[0004]本专利技术实施例提供一种基于微服务的分布式批量处理方法,用以解决批量加工程序在单机运行时间长、无法扩展的问题,该方法包括:
[0005]服务消费者在检测到满足预设批处理任务触发条件时,发起批处理请求至服务注册中心;所述批处理请求中包括处理当前批处理任务的批处理服务的标识;
[0006]服务注册中心根据当前批处理服务的标识,以及预先存储的多个批处理服务的标识与多个指令的关系,确定当前批处理服务的标识对应的当前多个指令;根据当前每一指令的服务标识,确定处理当前批处理任务的多个微服务;根据当前每一指令的标识和数据区,反序列化出微服务实例;调用微服务,将服务分布到多台机器上执行;所述每一指令中包括服务标识和数据区,每一批处理服务的标识对应的多个指令根据对应类型的批处理服务加工程序预先处理生成;
[0007]服务消费者根据多个微服务分布的标识生成调用指令,将调用指令发送至多个微服务分布的机器;
[0008]服务提供者中的接收到调用指令的多个微服务分布的机器处理所述批处理任务。
[0009]本专利技术实施例还提供一种基于微服务的分布式批量处理方法,该方法应用于服务注册中心,用以解决批量加工程序在单机运行时间长、无法扩展的问题,该方法包括:
[0010]根据当前批处理服务的标识,以及预先存储的多个批处理服务的标识与多个指令的关系,确定当前批处理服务的标识对应的当前多个指令;所述每一指令中包括服务标识和数据区,每一批处理服务的标识对应的多个指令根据对应类型的批处理服务加工程序预先处理生成;
[0011]根据当前每一指令的服务标识,确定处理当前批处理任务的多个微服务;
[0012]根据当前每一指令的数据区,反序列化出微服务实例;
[0013]本专利技术实施例还提供一种基于微服务的分布式批量处理系统,用以解决批量加工程序在单机运行时间长、无法扩展的问题,该系统包括:
[0014]服务消费者,用于在检测到满足预设批处理任务触发条件时,发起批处理请求至服务注册中心;通过数据区反序列化微服务实例,从而将调用指令发送至多个微服务分布的机器;所述批处理请求中包括处理当前批处理任务的批处理服务的标识;
[0015]服务注册中心,用于根据当前批处理服务的标识,以及预先存储的多个批处理服务的标识与多个指令的关系,确定当前批处理服务的标识对应的当前多个指令;根据当前每一指令的服务标识,确定处理当前批处理任务的多个微服务;根据当前每一指令的数据区,确定多微服务;所述每一指令中包括服务标识和数据区,每一批处理服务的标识对应的多个指令根据对应类型的批处理服务加工程序预先处理生成;
[0016]服务提供者中的接收到调用指令的多个微服务分布的机器,用于处理所述批处理任务。
[0017]本专利技术实施例还提供一种基于微服务的分布式批量处理服务注册中心,包括:
[0018]指令确定单元,用于根据当前批处理服务的标识,以及预先存储的多个批处理服务的标识与多个指令的关系,确定当前批处理服务的标识对应的当前多个指令;所述每一指令中包括服务标识和数据区,每一批处理服务的标识对应的多个指令根据对应类型的批处理服务加工程序预先处理生成;
[0019]注册单元,多个服务提供者可以将服务注册到注册单元
[0020]存储单元,服务注册中心带有数据区;
[0021]微服务确定单元,用于根据当前每一指令的服务标识,确定处理当前批处理任务的多个微服务;
[0022]发送单元,用于将多个微服务分布的机器标识发送至服务消费者;
[0023]调度单元,用于定时任务调度,作为服务消费者发起指令调用,以及处理指令状态流转和以失败、异常处理;
[0024]加密解密单元,用于对数据区的敏感数据进行加密、解密。
[0025]本专利技术实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述基于微服务的分布式批量处理方法。
[0026]本专利技术实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述基于微服务的分布式批量处理方法。
[0027]本专利技术实施例还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现上述基于微服务的分布式批量处理方法。
[0028]本专利技术实施例中,基于微服务的分布式批量处理方案,通过:服务消费者在检测到满足预设批处理任务触发条件时,发起批处理请求至服务注册中心;所述批处理请求中包括处理当前批处理任务的批处理服务的标识;服务注册中心根据当前批处理服务的标识,以及预先存储的多个批处理服务的标识与多个指令的关系,确定当前批处理服务的标识对应的当前多个指令;根据当前每一指令的服务标识,确定处理当前批处理任务的多个微服务;根据当前每一指令的数据区,反序列化微服务实例;通过发送单元,调用微服务实例;所
述每一指令中包括服务标识和数据区,每一批处理服务的标识对应的多个指令根据对应类型的批处理服务加工程序预先处理生成服务消费者根据多个微服务分布的机器标识生成调用指令,将调用指令发送至多个微服务分布的机器;服务提供者中的接收到调用指令的多个微服务分布的机器处理所述批处理任务。在上述过程中,本专利技术实施例通过服务消费者在检测到满足预设批处理任务触发条件时,发起批处理请求至服务注册中心,服务注册中心根据当前批处理服务的标识,以及预先存储的多个批处理服务的标识与多个指令的关系,确定当前批处理服务的标识对应的当前多个指令;根据当前每一指令的服务标识,确定处理当前批处理任务的多个微服务,从而提高了批处理任务处理的效率、改善了无法扩展的问题。
附图说明
[0029]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于微服务的分布式批量处理方法,其特征在于,包括:服务消费者在检测到满足预设批处理任务触发条件时,发起批处理请求至服务注册中心;所述批处理请求中包括处理当前批处理任务的批处理服务的标识;服务注册中心根据当前批处理服务的标识,以及预先存储的多个批处理服务的标识与多个指令的关系,确定当前批处理服务的标识对应的当前多个指令;根据当前每一指令的服务标识,确定处理当前批处理任务的多个微服务;根据当前每一指令的数据区,反序列化微服务实例;调用微服务实例可以将指令分布到多台机器执行;所述每一指令中包括服务标识和数据区,每一批处理服务的标识对应的多个指令根据对应类型的批处理服务加工程序预先处理生成;服务消费者通过调用微服务实例,将指令发送至多个微服务分布的机器执行;服务提供者中的接收到调用指令,在多个微服务实例分布的机器处理所述批处理任务。2.如权利要求1所述的方法,其特征在于,服务注册中心带有数据区,用于存储指令数据,包括指令的标识和指令的数据(包括状态、业务数据、时间戳等);服务注册中心可以拥有一个数据区或多个数据区,可以将数据分布在不同分区或者机器上存储,同时,为了保护数据安全,可以通过加密解密单元对数据区内的敏感数据进行加密解密,如:服务注册中心敏感数据(指令标识、微服务名、ip地址、系统用户名称、密码等),数据区敏感数据(用户名称、家庭住址、电话、银行卡号)等敏感数据。3.如权利要求1所述的方法,其特征在于,还包括:按照如下方法将每一类型的批处理服务加工程序预先处理生成每一批处理服务的标识及其对应的多个指令:获取每一类型的批处理服务加工程序;将每一类型的批处理服务加工程序转换为每一批处理服务;每一批处理服务对应多个指令;将每一批处理服务拆分成多个微服务;多个微服务被分布式地部署在服务提供者处的多台机器上,每一微服务对应一个指令;将每一批处理服务的标识及其对应的多个指令存储在所述服务注册中心。4.如权利要求1所述的方法,其特征在于,根据当前每一指令的数据区,通过序列化、反序列化将数据区转变为程序的数据结构确定微服务实例。5.如权利要求1所述的方法,其特征在于,多个服务提供者将微服务注册到服务注册中心,服务消费者根据指令标识,从服务注册中心获取微服务,根据指令数据区,反序列化微服务实例,通过发送单元,将调用指令发送至多个微服务分布的机器执行,包括:服务消费者根据多个微服务的数量,以及服务消费者中各个机器的当前运行状态,确定是否将调用指令发送至多个微服务分布的机器。6.一种基于微服务的分布式批量处理方法,其特征在于,该方法应用于服务注册中心,该方法包括:根据当前批处理服务的标识,以及预先存储的多个批处理服务的标识与多个指令的关系,确定当前批处理服务的标识对应的当前多个指令;所述每一指令中包括服务标识和数据区,每一批处理服务的标识对应的多个指令根据对应类型的批处理服务加工程序预先处理生成;
根据当前每一指令的服务标识,确定处理当前批处理任务的多个微服务;根据当前每一指令的数据区,反序列化微服务实例;服务消费者通过调用该微服务,将指令分布在不同的机器上执行。7.如权利要求6所述的方法,其特征在于,根据当前每一指令的数据区,通过序列化、反序列化将数据区转变为程序的数据结构实例化出微服务的实例。8.一种基于微服务的分布式批量处理系统,其特征在于,包括...

【专利技术属性】
技术研发人员:何江灏陈宏宇王镜刚朱鹏
申请(专利权)人:中国银行股份有限公司
类型:发明
国别省市:

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

1