【技术实现步骤摘要】
一种基于反射机制的自动重试装置及方法
本专利技术涉及软件开发
,具体地说是一种基于反射机制的自动重试装置及方法。
技术介绍
软件应用开发从早先的单体架构、SO一种基于反射机制的自动重试装置及方法服务体系,发展到现在的微服务架构,各个微服务应用之间相互独立,实现了结构上的松耦合,业务上靠Restful架构风格统一成一个系统。在应用之间异步处理的业务会通过MQ、接口等方式实现。在某些业务场景中,一种基于反射机制的自动重试装置及方法应用通知B应用,B应用去执行相应的业务处理,一种基于反射机制的自动重试装置及方法应用的通知只通知一次,那么B应用在收到这个处理通知后开始处理任务,但是有时候因为网络、应用状态等原因,任务处理失败,导致产生与预期不符的结果,造成业务间数据不一致的情况。
技术实现思路
本专利技术的技术任务是解决现有技术的不足,给微服务应用异步处理的业务提供一种基于反射机制的自动重试装置及方法。通过本专利技术的方法可以给应用提供一个任务重试的方案,让应用可以在任务失败后进行自动重试,当重试次 ...
【技术保护点】
1.一种基于反射机制的自动重试装置,其特征在于,包括:/n任务信息存储模块,用于在任务失败后,将失败的任务信息存入数据库;/n任务自动重试模块,当达到时间条件后,应用从数据库中取出任务信息,通过反射机制开始重试;/n任务处理策略模块,当任务重试失败后,重试次数加1,在时间条件再次到达时继续进行重试,当重试次数达到阈值后,采取相应的处理策略。/n
【技术特征摘要】
1.一种基于反射机制的自动重试装置,其特征在于,包括:
任务信息存储模块,用于在任务失败后,将失败的任务信息存入数据库;
任务自动重试模块,当达到时间条件后,应用从数据库中取出任务信息,通过反射机制开始重试;
任务处理策略模块,当任务重试失败后,重试次数加1,在时间条件再次到达时继续进行重试,当重试次数达到阈值后,采取相应的处理策略。
2.根据权利要求1所述的一种基于反射机制的自动重试装置,其特征在于,所述任务信息包括任务所在类、执行任务的方法、任务参数、重试次数。
3.根据权利要求2所述的一种基于反射机制的自动重试装置,其特征在于,所述任务信息按照重试次数划分为不同的队列,或按照任务类型进行划分,方便对不同的任务进行相应的处理。
4.根据权利要求1所述的一种基于反射机制的自动重试装置,其特征在于,所述数据库为Redis、Mysql数据库。
5.根据权利要求1所述的一种基于反射机制的自动重试装置,其特征在于,应用从数据库中取出任务信息,通过反射机制开始重试是指:通过反射机制,调用对应类的方法,并传入任务参数,执行任务,具体包括如下:
获取数据库中存储的失败任务的相关信息,包括处理该任务的对应处理类名、对应处理主方法名及处理该任务的方法参数信息;
通过反射机制和处理类的类名,构造出处理类的对象,通过处理主方法名,生成处理类对象的对应处理主方法对象;<...
【专利技术属性】
技术研发人员:魏金雷,陈初兴,徐士强,杨继伟,
申请(专利权)人:山东汇贸电子口岸有限公司,
类型:发明
国别省市:山东;37
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。