System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及计算机,具体涉及一种消费者容器的重启方法、装置、电子设备及存储介质。
技术介绍
1、在当今的软件开发与系统架构领域,异步模型凭借其允许同一时间处理多个事件的特性,得到了广泛应用。当程序调用耗时较长的功能方法时,不会阻塞执行流程,可继续向下运行,极大提升了整体效率。而docker容器技术也在部署异步任务处理器方面展现出诸多优势,它能保障各个服务相互独立,避免资源使用的浪费,通过docker部署异步任务处理器去实时监听和处理异步任务,不仅可减少资源占用,还能营造高可用的环境。并且,在多台节点上部署多个消费者容器,能有效减轻消费者在处理异步任务时的内存压力,进一步加快消费速度。然而,在多节点异步任务消费者容器重启这一关键环节上,却面临诸多挑战。一方面,异步任务本身往往有着较高的幂等性要求,尤其当任务信息体包含大量数据时,若进行恢复操作,效果不尽人意,效率也较为低下,而且在异步任务处理逻辑简单的情形下,改造工作量大,进而致使消费效率降低;另一方面,重启时机的把控极为困难,在数据流较大的场景中实施重启,现有技术难以在不影响任务消费效率的前提下确保异步任务顺利被消费。同时,从安全性角度来看,现有技术较为薄弱,外部错误或者恶意的重启指令容易致使容器不合时宜地重启,最终造成异步任务丢失。此外,当前对于重启意图不够明确,不同场景下的重启方式所产生的效果差异明显,但却缺乏针对各个重启场景设计的针对性方法。
2、然而在多节点异步任务消费者容器重启方面,存在异步任务恢复效果差、效率低、重启时机难把握、安全性弱以及缺乏针对性重启
技术实现思路
1、有鉴于此,本专利技术实施例提供了一种消费者容器的重启方法、装置、电子设备及存储介质,以解决在多节点异步任务消费者容器重启方面,存在异步任务恢复效果差、效率低、重启时机难把握、安全性弱以及缺乏针对性重启方法的问题。
2、第一方面,本专利技术实施例提供了一种消费者容器的重启方法,所述方法包括:
3、实时获取部署在多节点的消费者容器的运行信息,以及获取所述消费者容器正在进行的异步任务信息和进程标识信息;
4、监听所述消费者容器所在运行环境的外部触发的容器重启指令;
5、响应所述容器重启指令,利用所述运行信息、所述异步任务信息以及所述进程标识信息进行重启性能评估,得到评估结果;
6、基于所述重启指令以及所述评估结果获取目标重启策略,并按照所述目标重启策略控制所述消费者容器执行重启操作。
7、进一步的,所述实时获取部署在多节点的消费者容器的运行信息,包括:
8、获取处于监控框架内的消费者容器,其中,所述监控框架是利用消费者容器所关联的消费任务队列以及所述消费者容器在各节点部署的具体数量构建的;
9、获取所述监控框架内的消费者容器按照容器判活方式上报的多个关键信息;
10、基于所述关键信息构建所述消费者容器的运行信息。
11、进一步的,所述获取所述消费者容器正在进行的异步任务信息和进程标识信息,包括:
12、分析正在进行的各异步任务是否属于分布式异步任务。
13、若属于分布式异步任务,则按照预设信息类目清单读取相应的异步任务信息;
14、确定所述消费者容器对应的消费者进程,并获取所述消费者进程中与所述分布式异步任务管理的进程标识信息。
15、进一步的,所述利用所述运行信息、所述异步任务信息以及所述进程标识信息进行重启性能评估,得到评估结果,包括:
16、利用所述运行信息评估所述消费者容器的重启状态;
17、利用所述异步任务信息以及所述进程标识信息评估所述消费者容器的重启风险;
18、基于所述重启状态以及所述重启风险生成所述评估结果。
19、进一步的,所述利用所述运行信息评估所述消费者容器的重启状态,包括:
20、从所述运行信息中提取所述消费者容器对应的判活信息以及多个指标数据;
21、分析所述判活信息得到所述消费者容器的容器状态;
22、对比各个指标数据和响应的预设阈值得到所述消费者容器的容器压力;
23、将所述容器状态以及所述容器压力与各个预设重启状态对应的重启条件进行匹配,得到所述容器状态以及所述容器压力命中的重启状态。
24、进一步的,所述利用所述异步任务信息以及所述进程标识信息评估所述消费者容器的重启风险,包括:
25、利用异步任务类型对所述消费者容器当前进行的异步任务进行分类,得到不同类型的异步任务;
26、按照历史同类型异步任务的任务指标数据确定当前相同类型的异步任务对应的任务分值;
27、从所述进程标识信息中确定消费者进程的进程数量以及监测到的数据包量;
28、分析所述消费者进程的进程数量、所述数据包量以及异步任务的任务分值之间的交互影响,并基于所述交互影响得到所述消费者容器的重启风险。
29、进一步的,所述按照所述目标重启策略控制所述消费者容器执行重启操作,包括:
30、获取待重启的消费者容器关联的密钥对,并将所述密钥对中的公钥信息和所述目标重启策略对应的停止指令发送至缓存,其中,所述消费者进程基于设定规则检测所述缓存是否存有重启指令,当检测到停止指令时,进入休眠状态,并暂停读取与消费后续异步任务;
31、持续监控所述缓存,当检测到所述缓存中没有待重启的消费者容器的实时数据包时,依据所述目标重启策略执行重启操作,并在所述消费者容器重启后,将原有消费者进程终止,并清理所述缓存中的停止指令。
32、第二方面,本专利技术实施例提供了一种消费者容器的重启装置,所述装置包括:
33、获取模块,用于实时获取部署在多节点的消费者容器的运行信息,以及获取所述消费者容器正在进行的异步任务信息和进程标识信息;
34、监听模块,用于监听所述消费者容器所在运行环境的外部触发的容器重启指令;
35、评估模块,用于基于所述容器重启指令,利用所述运行信息、所述异步任务信息以及所述进程标识信息进行重启性能评估,得到评估结果;
36、执行模块,用于基于所述重启指令以及所述评估结果获取目标重启策略,并按照所述目标重启策略控制所述消费者容器执行重启操作。
37、第三方面,本专利技术实施例提供了一种电子设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行上述第一方面或其对应的任一实施方式的方法。
38、第四方面,本专利技术实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的方法。
39、本申请首先通过实时获取部署在多节点的消费者容器的运行信息,以及精准抓取正在进行的异步任务信本文档来自技高网...
【技术保护点】
1.一种消费者容器的重启方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述实时获取部署在多节点的消费者容器的运行信息,包括:
3.根据权利要求1所述的方法,其特征在于,所述获取所述消费者容器正在进行的异步任务信息和进程标识信息,包括:
4.根据权利要求1所述的方法,其特征在于,所述利用所述运行信息、所述异步任务信息以及所述进程标识信息进行重启性能评估,得到评估结果,包括:
5.根据权利要求4所述的方法,其特征在于,所述利用所述运行信息评估所述消费者容器的重启状态,包括:
6.根据权利要求4所述的方法,其特征在于,所述利用所述异步任务信息以及所述进程标识信息评估所述消费者容器的重启风险,包括:
7.根据权利要求1所述的方法,其特征在于,所述按照所述目标重启策略控制所述消费者容器执行重启操作,包括:
8.一种消费者容器的重启装置,其特征在于,所述装置包括:
9.一种电子设备,其特征在于,包括:
10.一种计算机可读存储介质,其特征在于,所述计算机可
...【技术特征摘要】
1.一种消费者容器的重启方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述实时获取部署在多节点的消费者容器的运行信息,包括:
3.根据权利要求1所述的方法,其特征在于,所述获取所述消费者容器正在进行的异步任务信息和进程标识信息,包括:
4.根据权利要求1所述的方法,其特征在于,所述利用所述运行信息、所述异步任务信息以及所述进程标识信息进行重启性能评估,得到评估结果,包括:
5.根据权利要求4所述的方法,其特征在于,所述利用所述运行信息评估所述消费者容器的重启状态...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。