基于算法服务平台的控制方法、装置、设备及存储介质制造方法及图纸

技术编号:33536509 阅读:14 留言:0更新日期:2022-05-19 02:18
本发明专利技术涉及人工智能及数字医疗领域,具体公开了一种基于算法服务平台的控制方法、装置、设备及存储介质。该方法包括:构建算法服务平台,算法服务平台包括Web服务层、消息队列层以及算法引擎层,消息队列层包括多个消息列表,算法引擎层包括多个算法引擎,建立每个算法引擎与相同算法类型的消息列表之间的连接;控制算法引擎层主动向相同算法类型的消息列表发送获取任务请求并实时监听消息列表中是否存在算法任务;若消息列表存在算法任务,则控制消息队列层发送算法任务给算法引擎层;若消息列表不存在算法任务,则控制算法引擎层持续监听消息列表直到获取到算法任务为止。通过上述方式,本发明专利技术能够解耦消息队列,提高数据处理效率。处理效率。处理效率。

【技术实现步骤摘要】
基于算法服务平台的控制方法、装置、设备及存储介质


[0001]本专利技术涉及人工智能及数字医疗
,特别是涉及一种基于算法服务平台的控制方法、装置、设备及存储介质。

技术介绍

[0002]算法服务平台一般包含两个大部分:web服务平台层和算法引擎层, web服务平台整合各个算法服务(例如,OCR证件识别、人脸识别、车辆定损等),对外提供http接口供用户调用,每个算法服务有不同的http 接口地址,用户通过调用不同的http接口得到不同算法能力的结果。
[0003]现有的web服务平台与各个算法服务比较耦合,算法服务本身也是 http/rpc服务,web服务平台通过http/rpc方式结合负载均衡(一般使用 nginx)调用后端的算法服务,这种算法服务系统如果某种算法能力需要横向扩容/缩容,则需要配置负载均衡将新扩容的引擎纳入,笨重且不太灵活,频繁地扩容/缩容导致频繁地配置变更,不易于管理,不易于回退。另外,负载均衡策略不实用,常见的负载均衡有轮询、最小连接等,如果碰到某些请求算法耗时比预计时长要长的情况,很容易导致各个引擎负载的不均衡。

技术实现思路

[0004]本专利技术提供一种基于算法服务平台的控制方法、装置、设备及存储介质,能够解耦消息队列,提高数据处理效率,解决传统的负载均衡策略导致的处理请求耗时长,效率低的问题。
[0005]为解决上述技术问题,本专利技术采用的一个技术方案是:提供一种基于算法服务平台的控制方法,包括:
[0006]构建算法服务平台,所述算法服务平台包括Web服务层、消息队列层以及算法引擎层,所述消息队列层包括多个消息列表,所述算法引擎层包括多个算法引擎,建立每个所述算法引擎与相同算法类型的所述消息列表之间的连接;
[0007]控制所述算法引擎层主动向相同算法类型的所述消息列表发送获取任务请求并实时监听所述消息列表中是否存在算法任务;
[0008]若所述消息列表存在所述算法任务,则控制所述消息队列层发送所述算法任务给所述算法引擎层;
[0009]若所述消息列表不存在所述算法任务,则控制所述算法引擎层持续监听所述消息列表直到获取到所述算法任务为止。
[0010]根据本专利技术的一个实施例,所述控制算法引擎层主动向相同算法类型的所述消息列表发送获取任务请求并实时监听所述消息列表中是否存在算法任务还包括:
[0011]控制所述算法引擎层实时监测每个所述算法引擎执行上一算法任务的状态;
[0012]当所述算法引擎层监测到所述算法引擎执行完上一个算法任务时,控制所述算法引擎层主动向所述消息队列层发送获取任务请求;
[0013]所述消息队列层接收所述获取任务请求后,控制所述消息队列层从所述获取任务请求中获取算法类型,将具有相同算法类型的消息列表确定为目标消息列表并检测所述目标消息列表中是否存在新的算法任务。
[0014]根据本专利技术的一个实施例,所述若所述消息列表不存在所述算法任务之后,还包括:
[0015]控制所述消息队列层在预设时间阈值内检测是否有新的算法任务加入所述消息列表中;
[0016]若在所述预设时间阈值内有新的算法任务加入所述消息列表中,则控制所述消息队列层将新的算法任务给所述算法引擎层。
[0017]根据本专利技术的一个实施例,所述控制所述消息队列层在预设时间阈值内检测是否有新的算法任务加入所述消息列表中之后,还包括:
[0018]若在所述预设时间阈值内没有新的算法任务加入所述消息列表中,则控制所述消息队列层所述消息列表向所述算法引擎层发送预设消息。
[0019]根据本专利技术的一个实施例,所述若在所述预设时间阈值内有新的算法任务加入所述消息列表中,则控制所述消息队列层将新的算法任务给所述算法引擎层之前,包括:
[0020]所述消息队列层接收所述Web服务层发送的算法任务请求后,控制所述消息队列层根据所述算法任务请求创建对应的键值对,同时将所述算法任务请求中携带的算法任务加入具有相同算法类型的所述消息列表中,所述算法任务请求携带有算法任务以及算法类型。
[0021]根据本专利技术的一个实施例,所述控制所述消息队列层发送所述算法任务给所述算法引擎层,或者,所述控制所述算法引擎层持续监听所述消息列表直到获取到所述算法任务为止之后,还包括:
[0022]当所述算法引擎层接收所述算法任务后,控制所述算法引擎层执行所述算法任务并生成计算结果,将所述计算结果发送给所述消息队列层。
[0023]根据本专利技术的一个实施例,所述当所述算法引擎层接收所述算法任务后,控制所述算法引擎层执行所述算法任务并生成计算结果,将所述计算结果发送给所述消息队列层之后,还包括:
[0024]所述消息队列层接收所述计算结果后,控制所述消息队列层根据所述计算结果更新所述键值对并将更新后的所述键值对同步给所述Web 服务层。
[0025]为解决上述技术问题,本专利技术采用的另一个技术方案是:提供一种基于算法服务平台的控制装置,包括:
[0026]构建模块,用于构建算法服务平台,所述算法服务平台包括Web服务层、消息队列层以及算法引擎层,所述消息队列层包括多个消息列表,所述算法引擎层包括多个算法引擎,建立每个所述算法引擎与相同算法类型的所述消息列表之间的连接;
[0027]处理模块,用于控制所述算法引擎层主动向相同算法类型的所述消息列表发送获取任务请求并实时监听所述消息列表中是否存在算法任务;
[0028]第一判断模块,用于若所述消息列表存在所述算法任务,则控制所述消息队列层发送所述算法任务给所述算法引擎层;
[0029]第二判断模块,用于若所述消息列表不存在所述算法任务,则控制所述算法引擎
层持续监听所述消息列表直到获取到所述算法任务为止。
[0030]为解决上述技术问题,本专利技术采用的再一个技术方案是:提供一种计算机设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述的基于算法服务平台的控制方法。
[0031]为解决上述技术问题,本专利技术采用的再一个技术方案是:提供一种计算机存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述基于算法服务平台的控制方法。
[0032]本专利技术的有益效果是:通过消息队列层与算法引擎层之间的交互,对各个算法引擎进行解耦,在修改算法引擎层时无需频繁更改系统配置,便于系统管理;将算法引擎由传统的被动接收算法任务转换成主动监听并获取算法任务,提高了数据处理效率,解决了传统的负载均衡策略导致的处理请求耗时长,效率低的问题。
附图说明
[0033]图1是本专利技术第一实施例的基于算法服务平台的控制方法的流程示意图;
[0034]图2是本专利技术实施例中算法服务平台的结构示意图;
[0035]图3是本专利技术第二实施例的基于算法服务平台的控制方法的流程示意图;
[0036]图4是本专利技术第三实施例的基于算法服务平台的控制方法本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于算法服务平台的控制方法,其特征在于,包括:构建算法服务平台,所述算法服务平台包括Web服务层、消息队列层以及算法引擎层,所述消息队列层包括多个消息列表,所述算法引擎层包括多个算法引擎,建立每个所述算法引擎与相同算法类型的所述消息列表之间的连接;控制所述算法引擎层主动向相同算法类型的所述消息列表发送获取任务请求并实时监听所述消息列表中是否存在算法任务;若所述消息列表存在所述算法任务,则控制所述消息队列层发送所述算法任务给所述算法引擎层;若所述消息列表不存在所述算法任务,则控制所述算法引擎层持续监听所述消息列表直到获取到所述算法任务为止。2.根据权利要求1所述的控制方法,其特征在于,所述控制算法引擎层主动向相同算法类型的所述消息列表发送获取任务请求并实时监听所述消息列表中是否存在算法任务还包括:控制所述算法引擎层实时监测每个所述算法引擎执行上一算法任务的状态;当所述算法引擎层监测到所述算法引擎执行完上一个算法任务时,控制所述算法引擎层主动向所述消息队列层发送获取任务请求;所述消息队列层接收所述获取任务请求后,控制所述消息队列层从所述获取任务请求中获取算法类型,将具有相同算法类型的消息列表确定为目标消息列表并检测所述目标消息列表中是否存在新的算法任务。3.根据权利要求1所述的控制方法,其特征在于,所述若所述消息列表不存在所述算法任务之后,还包括:控制所述消息队列层在预设时间阈值内检测是否有新的算法任务加入所述消息列表中;若在所述预设时间阈值内有新的算法任务加入所述消息列表中,则控制所述消息队列层将新的算法任务给所述算法引擎层。4.根据权利要求3所述的控制方法,其特征在于,所述控制所述消息队列层在预设时间阈值内检测是否有新的算法任务加入所述消息列表中之后,还包括:若在所述预设时间阈值内没有新的算法任务加入所述消息列表中,则控制所述消息列表向所述算法引擎层发送预设消息。5.根据权利要求3所述的控制方法,其特征在于,所述若在所述预设时间阈值内有新的算法任务加入所述消息列表中,则控制所述消息队列层将新的算法任务给所述算法引擎层之前,包括:所述消息队列层接收所述Web服务层发送的算法任务请求后,控制所述...

【专利技术属性】
技术研发人员:许洋刘鹏
申请(专利权)人:平安科技深圳有限公司
类型:发明
国别省市:

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

1