【技术实现步骤摘要】
一种消息队列异常的处理方法及终端
本专利技术涉及进程通信
,尤其是涉及一种消息队列异常的处理方法及终端。
技术介绍
消息队列自身提供了一些应对消息处理过程中发生异常的解决方案,目前比较常见的是以下几种技术方案:1、消息确认机制和重投递,消费者发送一个消息应答通知消息队列已将消息接受并处理完毕,消息队列才会删掉该消息。当消费者消费失败时,会进行重新投递。但是这时若是代码问题引起的异常,则进行重投递也不能解决问题,就会造成消息阻塞。同时,大量消费失败和重投递会严重影响消息队列服务器的性能,甚至引起宕机。2、重投递和重试策略,基于上述方案1,对消息消费失败的重试次数和重试间隔进行限定,一定程度上缓解消息队列服务器压力。但超过失败次数的消息默认会被丢弃,需要消费端进行额外处理,并且通常在问题暴露后才会被发现。3、死信,基于消息确认机制及死信机制,消费者不论消费成功还是失败均发送一个消息应答到消息队列,避免确认机制导致消息重投递。同时,如果消费成功,结束消费过程。如果消费失败,则将消息投递到重试Exchange(消息交换机),等待消息的有效时间过期后,重试Exchan ...
【技术保护点】
1.一种消息队列异常的处理方法,其特征在于,包括步骤:S1、判断失败消息队列中是否有重投递失败次数达到预设阈值的消息,若是,则执行步骤S2;S2、判断线程中是否存在与所述消息关联的异常堆栈信息,若是,则获取所述异常堆栈信息;S3、为所述异常堆栈信息分配唯一跟踪标识,将所述异常堆栈信息及其对应的唯一跟踪标识记录至日志中心,并向告警队列投递包含所述唯一跟踪标识的故障信息。
【技术特征摘要】
1.一种消息队列异常的处理方法,其特征在于,包括步骤:S1、判断失败消息队列中是否有重投递失败次数达到预设阈值的消息,若是,则执行步骤S2;S2、判断线程中是否存在与所述消息关联的异常堆栈信息,若是,则获取所述异常堆栈信息;S3、为所述异常堆栈信息分配唯一跟踪标识,将所述异常堆栈信息及其对应的唯一跟踪标识记录至日志中心,并向告警队列投递包含所述唯一跟踪标识的故障信息。2.根据权利要求1所述的一种消息队列异常的处理方法,其特征在于,所述步骤S1之前还包括:S11、开启消息队列的消息确认机制;S12、对处理失败的消息进行重投递;S13、判断所述消息重投递失败次数是否达到预设阈值,若是,则将所述消息流转至失败消息队列;若否,则返回执行S12。3.根据权利要求1所述的一种消息队列异常的处理方法,其特征在于,所述步骤S3中为所述异常堆栈信息分配唯一跟踪标识之后还包括:将所述消息及其对应的所述异常堆栈信息持久化存储。4.根据权利要求1所述的一种消息队列异常的处理方法,其特征在于,所述步骤S3之后还包括:S31、接收与失败消息对应的唯一跟踪标识,在日志中心定位与所述唯一跟踪标识对应的日志;S32、显示与所述日志对应的异常堆栈信息。5.根据权利要求4所述的一种消息队列异常的处理方法,其特征在于,所述步骤S32之后还包括:接收代码异常恢复后的失败消息重试指令;根据所述消息重试指令对所述失败消息进行消息重试。6.一种消息队列异常的处理终端,包括存储器、处理器及...
【专利技术属性】
技术研发人员:刘德建,吴昊,郭玉湖,
申请(专利权)人:福建天泉教育科技有限公司,
类型:发明
国别省市:福建,35
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。