一种基于消息的flink的实时服务调度配置方法和系统技术方案

技术编号:32192324 阅读:17 留言:0更新日期:2022-02-08 15:57
本发明专利技术公开了一种基于消息的flink的实时服务调度配置方法,涉及通信技术,解决了现有请求服务处理方式难以满足大业务量下的实时处理请求需求的技术问题。加载flink集群的配置数据,将格式统一的业务数据送入到RocketMQ消息队列中;按flink集群的配置数据实例化的解析类解析的消息数据,以校验消息数据;并将校验符合条件的消息数据进行封装;根据封装完毕的消息数据,获取请求服务参数信息;封装请求和参数,并通过内置多线程池发起对封装请求服务的调用。本发明专利技术还公开了一种基于消息的flink的实时服务调度配置系统。本发明专利技术架构高可用、可扩展,适合多种应用复杂场景的大数据专一业务实时请求调度和配置。专一业务实时请求调度和配置。专一业务实时请求调度和配置。

【技术实现步骤摘要】
一种基于消息的flink的实时服务调度配置方法和系统


[0001]本专利技术涉及通信技术,更具体地说,它涉及一种基于消息的flink的实时服务调度配置方法和系统。

技术介绍

[0002]大并发请求时代,从dubbo请求服务到restful架构微服务,当前服务请求不断横向扩展,多服务请求可以支持。但针对专门业务类型的服务处理需要更快、更频繁、更及时的响应处理。
[0003]例如,在企业内部同类型的大数据量请求同一服务的使用场景中,短信的生成、发送,以及工单的生成等,这些服务单一的业务数据量大,从而大大的制约了系统的性能。
[0004]然而,在海量请求面前,服务处理会出现响应出错率升高的情况。而用户对数据处理及时、准确、正常响应率的要求则不断提高。在现有资源的情况下,如何发挥和利用现有服务实现统一管理和配置调度服务处理,是本领域技术人员所面临的问题。
[0005]目前,针对专业性业务需求,普通架构方式服务的主要缺陷在于:
[0006](1)功能上:缺乏可配置性;缺乏实时查看处理情况、缺少快速调整并发请求量,合理的数据校验补偿机制等,缺乏灵活性定制化;
[0007](2)性能上:业务服务请求稍大,对专业单一服务请求的处理率就会下降,影响其他业务请求和下游业务;
[0008](3)数据一致性:请求处理和返回结果不一致;
[0009](4)可用性:容错机制差,请求网络或服务重启场景下造成异常中断,请求需要重新发起。
[0010]面对这些问题,现有请求服务处理方式,难以满足大业务量下的实时处理请求需求。

技术实现思路

[0011]本专利技术要解决的技术问题是针对现有技术的不足,提供一种基于消息的flink的实时服务调度配置方法和系统,满足了大业务量下的实时处理请求需求。
[0012]本专利技术所述的一种基于消息的flink的实时服务调度配置方法,包括
[0013]源数据采集步骤,用于加载flink集群的配置数据,将格式统一的业务数据送入到RocketMQ消息队列中;
[0014]数据转化步骤,用于获取所述RocketMQ消息队列中的消息数据,按flink集群的配置数据实例化的解析类解析所述的消息数据,以校验所述消息数据;并将校验符合条件所述的消息数据进行封装,生成调度参数;
[0015]数据输出步骤,用于根据所述调度参数,获取请求服务参数信息,并生成调度请求;封装所述调度请求和调度参数,通过内置多线程池与flink输出线程控制根据封装后的调度请求和调度参数发起对封装请求服务的调用。
[0016]作进一步的改进,发起对所述封装请求服务的调用后,实时监控反馈信息;
[0017]若反馈信息正常,则记录调用结果的状态,并将其更新至ES数据库中;
[0018]若反馈信息异常,则将调用结果标记为异常,并记录至ES数据库的异常库中。
[0019]进一步的,校验所述消息数据,若校验不符合条件,则将所述消息数据记录至ES数据库的异常库中。
[0020]更进一步的,所述ES数据库接收到异常数据后,对所述异常数据进行分类,通过异常补偿任务对指定类型的异常数据重新发起请求调度;对其他的所述异常数据输出异常汇总和统计。
[0021]更进一步的,所述指定类型的异常数据包括网络异常数据和服务异常数据。
[0022]更进一步的,所述将格式统一的业务数据送入到RocketMQ消息队列中,具体包括,
[0023]实例化RocketMQ消息队列监听等待;启动多消费线程池;为所述RocketMQ消息队列中送入格式统一的业务数据,所述RocketMQ消息队列监听获取RocketMQ消息队列中的消息数据,并将所述消息数据推送至数据转化步骤。
[0024]更进一步的,获取所述消息数据后,将所述消息数据的获取记录进行备份,并发送至ES数据库中。
[0025]更进一步的,所述业务数据的格式为json格式。
[0026]一种基于消息的flink的实时服务调度配置系统,包括flink集群流计算引擎和服务适配集群模块;所述flink集群流计算引擎采集格式统一的业务数据,并根据所述业务数据,应用所述的实时服务调度配置方法,向所述服务适配集群模块发起服务调用。
[0027]进一步的,还包括存储模块;所述存储模块用于备份flink集群流计算引擎在运行过程中产生的正常数据,同时监听并记录其产生的异常数据。
[0028]有益效果
[0029]本专利技术的优点在于:
[0030]1、本专利技术利用了RocketMQ消息队列的灵活性和可靠性,flink集群的多任务和流批处理能力,同时采用ES数据库记录存储消息处理轨迹,从而有效的保证了数据的一致性。
[0031]2、本专利技术采用flink集群的配置数据和fink集群的环节线程,来保证系统扩容或缩容下,不需优化代码来增加消息处理能力来调整服务效率,提升了业务处理解析能力。
[0032]3、以json格式和约定协议对象写入到RocketMQ消息队列,由于其是一种中间格式和配置表对应,因此可实现快速扩展能力和服务。
[0033]4、本专利技术采用ES日志异步并行解析,fink集群的集群化多任务特性,从而保证系统的高性能。
附图说明
[0034]图1为本专利技术的实时服务调度配置方法流程示意图;
[0035]图2为本专利技术的实时服务调度配置系统总体架构示意图;
[0036]图3为本专利技术的实时服务调度配置系统功能架构示意图。
具体实施方式
[0037]下面结合实施例,对本专利技术作进一步的描述,但不构成对本专利技术的任何限制,任何
人在本专利技术权利要求范围所做的有限次的修改,仍在本专利技术的权利要求范围内。
[0038]参阅图1

图3,本专利技术的一种基于消息的flink的实时服务调度配置方法,包括源数据采集步骤、数据转化步骤和数据输出步骤。
[0039]其中,源数据采集步骤,用于加载flink集群的配置数据,将格式统一的业务数据送入到RocketMQ消息队列中,并将RocketMQ消息队列中的消息数据推送给数据转化环节。
[0040]其中,本实施例的业务数据的格式为json格式。此外,送入到RocketMQ消息队列中的业务数据还包括约定协议对象。约定协议对象是flink集群中定义的父类对象,业务数据则需要继承这个对象,享有一致的公共请求属性,如业务编码,业务类型等。这些属性是用于和flink集群的配置表中配置数据做关联的固定属性。以json格式和约定协议对象写入到RocketMQ消息队列的消息主题,由于其是一种中间格式和配置表对应,因此可实现快速扩展能力和服务。通过数据格式统一的约定,使得数据一致性得到有效的保障。RocketMQ消息队列的ID为随机序列,以保证其唯一性。
[0041]将格式统一的业务数据送入到RocketMQ消息队列中,具体包括,
[0042]实例化Ro本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于消息的flink的实时服务调度配置方法,其特征在于,包括源数据采集步骤,用于加载flink集群的配置数据,将格式统一的业务数据送入到RocketMQ消息队列中;数据转化步骤,用于获取所述RocketMQ消息队列中的消息数据,按flink集群的配置数据实例化的解析类解析所述的消息数据,以校验所述消息数据;并将校验符合条件所述的消息数据进行封装,生成调度参数;数据输出步骤,用于根据所述调度参数获取请求服务参数信息,并生成调度请求;封装所述调度请求和调度参数,通过内置多线程池与flink输出线程控制根据封装后的调度请求和调度参数发起对封装请求服务的调用。2.根据权利要求1所述的一种基于消息的flink的实时服务调度配置方法,其特征在于,发起对所述封装请求服务的调用后,实时监控反馈信息;若反馈信息正常,则记录调用结果的状态,并将其更新至ES数据库中;若反馈信息异常,则将调用结果标记为异常,并记录至ES数据库的异常库中。3.根据权利要求1所述的一种基于消息的flink的实时服务调度配置方法,其特征在于,校验所述消息数据,若校验不符合条件,则将所述消息数据记录至ES数据库的异常库中。4.根据权利要求2或3所述的一种基于消息的flink的实时服务调度配置方法,其特征在于,所述ES数据库接收到异常数据后,对所述异常数据进行分类,通过异常补偿任务对指定类型的异常数据重新发起请求调度;对其他的所述异常数据输出异常汇总和统计。5.根据权利要求4所述的一种基于消息的...

【专利技术属性】
技术研发人员:胡世敏连伟灿王敏丁明廖小文
申请(专利权)人:广东亿迅科技有限公司
类型:发明
国别省市:

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

1