CN110245154B - 多路链接异常处理方法以及相关设备 - Google Patents
多路链接异常处理方法以及相关设备 Download PDFInfo
- Publication number
- CN110245154B CN110245154B CN201910420882.XA CN201910420882A CN110245154B CN 110245154 B CN110245154 B CN 110245154B CN 201910420882 A CN201910420882 A CN 201910420882A CN 110245154 B CN110245154 B CN 110245154B
- Authority
- CN
- China
- Prior art keywords
- service
- processing
- node
- information
- link
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/1805—Append-only file systems, e.g. using logs or journals to store data
- G06F16/1815—Journaling file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Computing Systems (AREA)
- Computer And Data Communications (AREA)
Abstract
本公开涉及一种多路链接异常处理方法,所述方法应用于多链路平台,多链路平台包括一个中转节点和多个业务节点,一个中转节点与多个业务节点形成多路链接;所述方法包括:在多路链接中的一路链接出现链路异常的情况下,目标业务节点向中转节点发送业务的异常信息;目标业务节点接收来自中转节点的异常处理策略;标业务节点根据异常处理策略进行链路异常修复;在链路异常修复成功的情况下,目标业务节点对业务进行业务补偿,以恢复由于链路异常而中止的业务。通过实施本申请的多路链接异常处理方法,能提高系统异常的处理效率,并且保证了业务数据传输的可靠性。
Description
技术领域
本公开涉及数据处理技术领域,尤其涉及一种多路链接异常处理方法以及相关设备。
背景技术
多链路平台是由一个中转节点与多个业务节点相连形成的平台,由于多链路平台集成的业务节点较多,容易产生异常,发生异常是会导致消息中途丢失,丢失后的消息难以追查。目前,多链路平台中的消息传输的可靠性较低,且异常处理效率低下。
发明内容
本公开提出一种多路链接异常处理技术方案,能提高系统异常的处理效率,并且保证了交易消息传输的可靠性。
根据本公开第一方面,提供一种多路链接异常处理方法,所述方法应用于多链路平台,所述多链路平台包括一个中转节点和多个业务节点,所述一个中转节点与所述多个业务节点形成多路链接;所述方法包括:
在所述多路链接中的一路链接出现链路异常的情况下,所述目标业务节点向所述中转节点发送业务的异常信息;
所述目标业务节点接收来自所述中转节点的异常处理策略;所述异常处理策略是所述中转节点根据所述目标业务节点的异常信息及所述一路链接中的其他出现异常的业务节点的异常信息,和所述目标业务节点的日志信息及其他出现异常的业务节点的日志信息确定的;
所述目标业务节点根据所述异常处理策略进行链路异常修复;
在所述链路异常修复成功的情况下,所述目标业务节点对所述业务进行业务补偿,以恢复由于所述链路异常而中止的业务。
在一些实施例中,在所述目标业务节点向所述中转节点发送业务的异常信息之前,包括:
所述目标业务节点处理所述业务,获得正常处理信息和异常处理信息;其中,所述正常处理信息表示正常处理所述业务的一部分内容得到的处理结果,所述异常处理信息表示异常处理所述业务的另一部分内容得到的处理结果;
所述目标业务节点对所述业务进行业务补偿,以恢复由于所述链路异常而中止的业务,包括:
所述目标业务节点根据所述正常处理信息,确定所述业务的处理进度为已正常处理所述业务的一部分内容;
所述目标业务节点根据所述异常处理信息,重新处理所述业务的另一部分内容,以得到正常处理所述业务的另一部分内容的处理结果;
所述目标业务节点将所述正常处理所述业务的一部分内容得到的处理结果和所述正常处理所述业务的另一部分内容得到的处理结果作为所述目标业务节点对所述业务处理的结果。
在一些实施例中,在所述目标业务节点接收来自所述中转节点的异常处理策略之前,所述方法还包括:
所述目标业务节点根据日志模板,对所述目标业务节点中的日志信息进行标准化处理,得到标准化的日志信息;
所述目标业务节点将所述标准化的日志信息发送至所述中转节点;所述标准化的日志信息用于所述中转节点确定所述异常处理策略。
在一些实施例中,所述目标业务节点根据所述异常处理策略进行链路异常修复之后,所述方法还包括:
若所述目标业务节点根据所述异常处理策略进行链路异常修复所使用的时间超过预设时间阈值,则所述目标业务节点确定所述链路异常修复失败。
在一些实施例中,所述目标业务节点根据所述异常处理策略进行链路异常修复之后,所述方法还包括:
若所述目标业务节点根据所述异常处理策略进行链路异常修复所使用的修复次数超过预设次数阈值,则所述目标业务节点确定所述链路异常修复失败。
在一些实施例中,所述方法还包括:
在所述链路异常修复失败的情况下,所述目标业务节点根据所述日志信息获取所述异常信息的风险等级;
所述目标业务节点根据所述风险等级向所述目标业务节点所属的管理设备发送预警信息,所述预警信息分为不同等级,所述风险等级越高,所述预警信息的等级越高。根据本公开第二方面,提供一种多路链接异常处理装置,所述装置应用于多链路平台,所述多链路平台包括一个中转节点和多个业务节点,所述一个中转节点与所述多个业务节点形成多路链接;所述装置包括:发送单元,接收单元,修复单元,补偿单元,
所述发送单元用于,在所述多路链接中的一路链接出现链路异常的情况下,向所述中转节点发送业务的异常信息;
所述接收单元用于,接收来自所述中转节点的异常处理策略;所述异常处理策略是所述中转节点根据所述目标业务节点的异常信息及所述一路链接中的其他出现异常的业务节点的异常信息,和所述目标业务节点的日志信息及其他出现异常的业务节点的日志信息确定的;
所述修复单元用于,根据所述异常处理策略进行链路异常修复;
所述补偿单元用于,在所述链路异常修复成功的情况下,所述目标业务节点对所述业务进行业务补偿,以恢复由于所述链路异常而中止的业务。
在一些实施例中,所述装置还包括处理单元,所述处理单元用于,在所述目标业务节点向所述中转节点发送业务的异常信息之前,
处理所述业务,获得正常处理信息和异常处理信息;其中,所述正常处理信息表示正常处理所述业务的一部分内容得到的处理结果,所述异常处理信息表示异常处理所述业务的另一部分内容得到的处理结果;
所述补偿单元还用于,
根据所述正常处理信息,确定所述业务的处理进度为已正常处理所述业务的一部分内容;
根据所述异常处理信息,重新处理所述业务的另一部分内容,以得到正常处理所述业务的另一部分内容的处理结果;
将所述正常处理所述业务的一部分内容得到的处理结果和所述正常处理所述业务的另一部分内容得到的处理结果作为所述目标业务节点对所述业务处理的结果。
在一些实施例中,所述装置还包括日志单元,所述日志单元用于,在所述目标业务节点接收来自所述中转节点的异常处理策略之前,
根据日志模板,对所述目标业务节点中的日志信息进行标准化处理,得到标准化的日志信息;
将所述标准化的日志信息发送至所述中转节点;所述标准化的日志信息用于所述中转节点确定所述异常处理策略。
在一些实施例中,所述装置还包括修复时间统计单元,所述计时处理单元用于,在所述修复单元根据所述异常处理策略进行链路异常修复之后,
若所述修复单元根据所述异常处理策略进行链路异常修复所使用的时间超过预设时间阈值,则确定所述链路异常修复失败。
在一些实施例中,所述装置还包括修复次数统计单元,所述修复次数统计单元用于,在所述修复单元根据所述异常处理策略进行链路异常修复之后,
若所述修复单元根据所述异常处理策略进行链路异常修复所使用的修复次数超过预设次数阈值,则确定所述链路异常修复失败。
在一些实施例中,所述装置还包括:预警单元,所述预警单元用于,
在所述链路异常修复失败的情况下,根据所述日志信息获取所述异常信息的风险等级;
根据所述风险等级向所述目标业务节点所属的管理设备发送预警信息,所述预警信息分为不同等级,所述风险等级越高,所述预警信息的等级越高。
根据本公开第三方面,提供一种电子设备,其特征在于,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为调用所述存储器存储的指令,对所述指令的调用使得所述处理器执行本公开任一实施例的方法。
根据本公开第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行以实现本公开任一实施例的方法。
本公开实施例中的多路链接异常处理方法,所述方法应用于多链路平台,多链路平台包括一个中转节点和多个业务节点,一个中转节点与多个业务节点形成多路链接;在多路链接中的一路链接出现链路异常的情况下,目标业务节点向中转节点发送业务的异常信息;然后,目标业务节点接收来自所述中转节点的异常处理策略;接着,目标业务节点根据异常处理策略进行链路异常修复;之后,在链路异常修复成功的情况下,目标业务节点对业务进行业务补偿,以恢复由于链路异常而中止的业务。通过实施本公开实施例,实现了多链路平台中的中转节点自动化处理多路链接中的异常,提高中转节点对多路链接各个业务节点产生的异常的处理效率,还实现了多路链接中的异常可重处理,因此对于业务数据在多路链接传输过程中,即使发生异常也可以进行重新修复,保证了业务数据传输的可靠性。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的多链路平台架构示意图;
图2是本申请实施例提供的多路链接异常处理方法示意流程图;
图3是本申请实施例提供的多链路平台交易消息传输示意图;
图4是本申请实施例提供的多路链接异常处理装置的结构示意图;
图5是本申请实施例提供的另一多路链接异常处理装置的结构示意图;
图6是本申请实施例提供的另一多路链接异常处理装置的结构示意图;
图7是本申请实施例提供的另一多路链接异常处理装置的结构示意图;
图8是本申请实施例提供的电子设备结构示意图。
具体实施方式
下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本公开说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本公开。如在本公开说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本公开说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
为了便于后文的理解,首先对本公开实施例的应用场景进行描述。本申请的多路链接异常处理方法适用于单个节点对接多个节点形成的多个链接中的异常处理,在多个链接中产生的异常存在难以定位异常原因,以及难以制定异常处理策略的问题。具体的,以图1为例子进行描述,图1是本公开实施例提供的多链路平台架构示意图,所述多链路平台包括:一层业务节点(A、B、C)、二层业务节点(A、B、C)、三层业务节点(A、B、C)、中转节点。由于多链路平台集成的业务节点较多,容易产生异常,发生异常是会导致消息中途丢失,丢失后的消息难以追查。通过将本申请的方法实施例应用于所述多链路平台中的各个业务节点,可以解决上述问题。下面展开描述。
请参见图2,图2是本申请实施例提供的多路链接异常处理方法示意流程图。
S101、在所述多路链接中的一路链接出现链路异常的情况下,所述目标业务节点向所述中转节点发送业务的异常信息。
在本申请实施例中,图2中的业务节点可以是根据逻辑功能划分的逻辑节点,也可以是根据实际存在的物理业务节点划分的物理节点。本申请对此不做具体限定。一般而言,将异常分为可预测的异常和不可预测的异常两类,对于可预测的异常,由于技术人员事先已针对可预测的异常编写相关的异常处理程序,因此当可预测的异常发生时,在异常发生处就已经被相关的异常处理程序自动处理了,该类型的异常可不记录到日志文件中;对于不可预测的异常,由于技术人员事先无法预测到该类型的异常的发生,因此当不可预测的异常发生时,该异常直接抛出,并且必须将该类型的异常记录到日志文件中。在本申请的的实施例中涉及的异常均指的是不可预测的异常。在本公开实施例中,异常信息是发生异常的业务节点对交易消息的处理不符合预设处理逻辑时触发的。所述异常信息的数据内容包括了交易消息的标识,当中转节点接收到发生异常的目标业务节点发送的异常信息时,通过所述异常信息中的交易消息的标识即可确定触发该异常信息的交易消息,后续即可通过查询该交易消息相关的日志信息来进一步确定异常原因,从而缩小了日志信息的查询范围,加快了异常原因的定位。
一般而言,对于独立的系统,当系统内部发生异常时,系统即可捕获异常,并通过查询日志文件,即可在系统内部针对异常进行处理。但是对于对接了多个一层业务节点、多个二层业务节点、以及多个三层业务节点的中转节点而言,中转节点的异常并不能像独立的系统那样简单地在系统内部即可完成处理的,举例来说,参见图3,在现有的技术方案中,当一个交易消息在链接1传递过程中发生异常,直到传输至链路终点,即三层业务节点A处才被捕获,而该异常既有可能是二层业务节点B引起的,也有可能是一层业务节点2引起的,还有可能是中转节点引起的,此时三层业务节点A通过查询自身的日志文件是无法准确定位该异常的发生点的。
因此,为解决上述问题,中转节点预先收集各个链接中的各个业务节点生成的日志信息,由于收集的日志信息来自不同链接的不同业务节点,不同链接的不同业务节点所使用的日志格式不可避免的具有可大可小的差异,而在不同格式的日志文件中查找异常原因的效率是十分低下的。而在本申请的实施例中通过日志模板将各个链接中的各个业务节点生成的日志信息标准化处理,从而得到标准化的日志信息,然后再将标准化的日志信息存储至中转节点的日志数据库中,使用标准化的日志信息不仅便于日志信息的管理,还提高了异常原因的查找效率。
进一步的,由于日志数据库中存储了来自各个链接各个业务节点的大量日志文件,在大量的日志文件中查找与异常信息相关的日志信息是十分消耗系统内存资源的,因此对日志数据库制定有效的索引,可以减少对系统内存资源的消耗,并且提高日志的搜索速度。例如,可以将日志数据库的索引设置为异常信息中的交易消息标识,其中交易消息标识唯一标识了一个特定的交易消息,然后将交易消息标识作为主键查询日志数据库,可快速获得与该交易消息相关的日志信息;再例如,可以将日志数据库的索引设置为日志打印时间点,然后将包含异常信息的发生时间点在内的一段时间区域作为主键查询日志数据库,亦可快速获得日志打印时间点在上述时间区域内的日志信息;再例如,本申请还可以将上述交易消息标识和上述日志打印时间点设置成日志数据库的联合索引,然后根据交易消息标识和异常信息的发生时间点共同查询日志数据库,可进一步缩小日志信息的查找范围。
在一些实施例中,在所述目标业务节点向所述中转节点发送业务的异常信息之前,目标业务节点处理所述业务,获得正常处理信息和异常处理信息;其中,正常处理信息表示正常处理所述业务的一部分内容得到的处理结果,异常处理信息表示异常处理所述业务的另一部分内容得到的处理结果;其中,正常处理为目标业务节点对交易消息的处理符合预设逻辑的处理,异常处理为目标业务节点对交易消息的处理不符合预设逻辑的处理。而将处理信息划分为正常处理信息和异常处理信息的目的在于,便于目标业务节点根据所述正常处理信息,恢复所述业务的处理进度,其中恢复的处理进度可以通过已正常处理所述业务的一部分内容表示,通过恢复所述业务的处理进度可以避免了交易消息因异常中止后重头处理的情况。
S102、所述目标业务节点接收来自所述中转节点的异常处理策略。
在本申请实施例中,所述异常处理策略是所述中转节点根据所述目标业务节点的异常信息及所述一路链接中的其他出现异常的业务节点的异常信息,和所述目标业务节点的日志信息及其他出现异常的业务节点的日志信息确定的。
在本申请实施例中,所述日志信息为标准化的日志信息,所述标准化的日志信息符合日志标准格式,所述异常处理策略的确定方式可以通过如下方式实现:所述异常信息可以是以错误码的形式表示,而错误码包括所述发生异常的链路的各个业务节点的系统标识,通过各个业务节点的系统标识可在中转节点的日志数据库中获取该链路各个业务节点的标准化的日志信息,其中各个业务节点标准化的日志信息可以是发生异常时间点的前后一段时间内的日志信息。在中转节点获得标准化的日志信息后,中转节点根据正则表达式匹配所述标准化的日志信息,确定所述根因的第一目标位置;中转节点根据所述第一目标位置,提取发生异常地链路的交易消息异常的根因,并根据所述根因确定导致所述根因的目标业务节点。本方案中,中转节点根据正则表达式匹配标准化的日志信息,确定根因的第一目标位置,本申请给出两种实现方式,具体参见下文描述。
其一,中转节点根据正则表达式匹配标准化的日志信息中出现错误标识的各个日志段;其中,各个日志段的内容为发生所述错误标识的原因;中转节点根据各个日志段的日志打印时间,将日志打印时间最早的日志段的所在位置,确定为所述根因的第一目标位置。所述正则表达式通常被用来检索符合某个模式(规则)的文本,这里使用正则表达式来检索具有错误标识的日志段,其中错误标识可以是INFO,WARN,ERROR,FATAL等,在得到具有错误标识的各个日志段后,然后根据各个日志段的日志打印时间,可得出根因位置,即将日志打印时间最早的的日志段作为所述根因的位置。
其二,中转节点根据正则表达式匹配所述标准化的日志信息中出现错误标识的各个日志段;各个日志段的内容为发生所述错误标识的原因;中转节点根据各个日志段的日志错误等级,将日志错误等级最高的日志段的所在位置,确定为所述根因的第一目标位置。所述正则表达式通常被用来检索符合某个模式(规则)的文本,这里使用正则表达式来检索具有错误标识的日志段,其中错误标识可以是INFO,WARN,ERROR,FATAL等,在得到具有错误标识的各个日志段后,然后根据各个日志段的日志错误等级,可得出根因位置,即将日志错误等级最高的的日志段作为所述根因的位置。
通过上述实施例描述的步骤得到所述异常的根因后,根据所述异常的根因查询预先设定的异常根因与异常处理策略的关系映射表获得异常处理策略。下面通过举例说明如何通过查询所述关系映射表获得所述异常处理策略:例如,图3中的链路1中的二层业务节点B发生空指针异常,而二层业务节点B通过异常信息仅能确定该异常是由指针指向的内存空间不存在导致的,另外,二层业务节点B不能确定该异常是自身业务节点的处理逻辑不符合预设逻辑导致的,还是其下游业务节点的处理逻辑不符合预设逻辑导致的。因此,需要中转节点通过该空指针异常信息查询日志信息库后,获得所述空指针异常的根因,例如,此处的根因为一层业务节点B未上传指定文件。而中转节点查询所述异常根因与异常处理策略的关系映射表中未上传指定文件的异常处理策略,例如,此处的异常处理策略为中转节点向一层业务节点B发送补充指定文件的请求。通过实施上述实施例,提高了多链路平台的异常定位和异常处理效率,避免了逐个排查多链路中的各个业务节点。
S103、所述目标业务节点根据所述异常处理策略进行链路异常修复。
在一些实施例中,若目标业务节点根据异常处理策略进行链路异常修复所使用的时间超过预设时间阈值,和/或,预设次数阈值,则所述目标业务节点确定所述链路异常修复失败。通常情况下,目标业务节点进行链路异常修复的一次成功修复的几率较低,往往需要进行多次修复,而对于需要人为介入才能处理的异常,即使修复的次数再多,修复的时间再长,没有人为介入是无法解决该异常的,因此在本发明中,需要将此类异常进行筛除,避免循环修复异常导致服务器资源的耗损。而本发明实施例中,通过统计修改该异常的修复时间,和/或,修复次数,是否超过预设时间阈值,和/或,是否超过预设次数阈值,来判断该异常是否为需要人为介入才能的处理的异常。
在一些实施例中,在链路异常修复失败的情况下,目标业务节点根据日志信息获取异常信息的风险等级;目标业务节点根据风险等级向目标业务节点所属的管理设备发送预警信息,其中预警信息分为不同等级,风险等级越高,预警信息的等级越高。举例来说,例如异常信息的风险等级可以通过打印日志信息的错误标识的等级(例如WARN,ERROR,FATAL)来表示,而风险等级为WARN的异常的预警信息为邮件预警信息;风险等级为ERROR的异常的预警信息为短信预警信息;风险等级为FATAL的异常的预警信息为电话预警信息。
S104、在所述链路异常修复成功的情况下,所述目标业务节点对所述业务进行业务补偿,以恢复由于所述链路异常而中止的业务。
在一些实施例中,目标业务节点对所述业务进行业务补偿,以恢复由于所述链路异常而中止的业务,可以通过如下方式实现:目标业务节点根据所述正常处理信息,确定所述业务的处理进度为已正常处理所述业务的一部分内容;目标业务节点根据所述异常处理信息,重新处理所述业务的另一部分内容,以得到正常处理所述业务的另一部分内容的处理结果;目标业务节点将所述正常处理所述业务的一部分内容得到的处理结果和所述正常处理所述业务的另一部分内容得到的处理结果作为所述目标业务节点对所述业务处理的结果。
以图3链路1进行举例说明,交易消息在经过一层业务节点B、二层业务节点B、中转节点后,在三层业务节点A处发生异常,从而触发了异常信息,当发生异常时,目标业务节点将当前交易消息的处理信息缓存至消息队列中,该处理信息包括关于该交易消息的正常处理信息和异常处理信息,这里,正常处理信息包括一层业务节点B、二层业务节点B对交易消息的处理信息,异常处理信息包括三层业务节点对交易消息的处理信息。而在目标业务节点根据所述异常处理策略进行链路异常修复后,目标业务节点从所述消息队列中获取处理信息,根据处理信息中的正常处理信息恢复该交易消息的处理进度后,然后重新执行异常处理的业务内容,这里即恢复一层业务节点B、二层业务节点B以及中转节点的处理结果,重新执行三层业务节点A的业务内容。
本公开实施例中的多路链接异常处理方法,所述方法应用于多链路平台,多链路平台包括一个中转节点和多个业务节点,一个中转节点与多个业务节点形成多路链接;在多路链接中的一路链接出现链路异常的情况下,目标业务节点向中转节点发送业务的异常信息;然后,目标业务节点接收来自所述中转节点的异常处理策略;接着,目标业务节点根据异常处理策略进行链路异常修复;之后,在链路异常修复成功的情况下,目标业务节点对业务进行业务补偿,以恢复由于链路异常而中止的业务。通过实施本公开实施例,实现了多链路平台中的中转节点自动化处理多路链接中的异常,提高中转节点对多路链接各个业务节点产生的异常的处理效率,还实现了多路链接中的异常可重处理,因此对于业务数据在多路链接传输过程中,即使发生异常也可以进行重新修复,保证了业务数据传输的可靠性。
参见图4,图4是本申请提供的一种多路链接异常处理装置400,所述装置400应用于多链路平台,所述多链路平台包括一个中转节点和多个业务节点,所述一个中转节点与所述多个业务节点形成多路链接;所述装置400包括:发送单元401,接收单元402,修复单元403,补偿单元403,
所述发送单元401用于,在所述多路链接中的一路链接出现链路异常的情况下,向所述中转节点发送业务的异常信息;
所述接收单元402用于,接收来自所述中转节点的异常处理策略;所述异常处理策略是所述中转节点根据所述目标业务节点的异常信息及所述一路链接中的其他出现异常的业务节点的异常信息,和所述目标业务节点的日志信息及其他出现异常的业务节点的日志信息确定的;
所述修复单元403用于,根据所述异常处理策略进行链路异常修复;
所述补偿单元404用于,在所述链路异常修复成功的情况下,所述目标业务节点对所述业务进行业务补偿,以恢复由于所述链路异常而中止的业务。
在一些实施例中,参见图5,所述装置还包括处理单元501,所述处理单元501用于,在所述目标业务节点向所述中转节点发送业务的异常信息之前,处理所述业务,获得正常处理信息和异常处理信息;其中,所述正常处理信息表示正常处理所述业务的一部分内容得到的处理结果,所述异常处理信息表示异常处理所述业务的另一部分内容得到的处理结果;
相应地,所述补偿单元403还用于,根据所述正常处理信息,确定所述业务的处理进度为已正常处理所述业务的一部分内容;根据所述异常处理信息,重新处理所述业务的另一部分内容,以得到正常处理所述业务的另一部分内容的处理结果;将所述正常处理所述业务的一部分内容得到的处理结果和所述正常处理所述业务的另一部分内容得到的处理结果作为所述目标业务节点对所述业务处理的结果。
在一些实施例中,参见图6,所述装置还包括日志单元601,所述日志单元601用于,在所述目标业务节点接收来自所述中转节点的异常处理策略之前,根据日志模板,对所述目标业务节点中的日志信息进行标准化处理,得到标准化的日志信息;将所述标准化的日志信息发送至所述中转节点;所述标准化的日志信息用于所述中转节点确定所述异常处理策略。
在一些实施例中,参见图7,所述装置还包括修复时间统计单元701,所述计时处理单元501用于,在所述修复单元403根据所述异常处理策略进行链路异常修复之后,若所述修复单元根据所述异常处理策略进行链路异常修复所使用的时间超过预设时间阈值,则确定所述链路异常修复失败。
在一些实施例中,参见图7,所述装置还包括修复次数统计单元702,所述修复次数统计单元702用于,在所述修复单元根据所述异常处理策略进行链路异常修复之后,若所述修复单元根据所述异常处理策略进行链路异常修复所使用的修复次数超过预设次数阈值,则确定所述链路异常修复失败。
在一些实施例中,参见图7,所述装置还包括:预警单元703,所述预警单元703用于,在所述链路异常修复失败的情况下,根据所述日志信息获取所述异常信息的风险等级;根据所述风险等级向所述目标业务节点所属的管理设备发送预警信息,所述预警信息分为不同等级,所述风险等级越高,所述预警信息的等级越高。
在一些实施例中,本公开实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
另外,本发明实施例提供了一种电子设备,其可以包括本发明上述任一实施例的多路链接异常处理方法。具体地,该电子设备例如可以是终端设备或者服务器等设备。
本发明实施例还提供一种电子设备,包括:存储器,用于存储可执行指令;以及处理器,用于与所述存储器通信以执行所述可执行指令从而完成本发明上述任一实施例所述多路链接异常处理方法的操作。
图8是本公开实施例提供的一种电子设备结构框图。下面参考图8,其示出了适于用来实现本发明实施例的终端设备或服务器的电子设备的结构示意图。如图8所示,该电子设备包括:一个或多个处理器801;一个或多个输入接口802,一个或多个输出接口803和存储器804。上述处理器801、输入接口802、输出接口803和存储器804通过总线805连接。存储器802用于存储指令,处理器801用于执行存储器802存储的指令。其中,处理器801被配置用于调用所述程序指令执行:
在所述多路链接中的一路链接出现链路异常的情况下,向所述中转节点发送业务的异常信息;
通过输入接口802接收来自所述中转节点的异常处理策略;所述异常处理策略是所述中转节点根据所述目标业务节点的异常信息及所述一路链接中的其他出现异常的业务节点的异常信息,和所述目标业务节点的日志信息及其他出现异常的业务节点的日志信息确定的;
根据所述异常处理策略进行链路异常修复;
在所述链路异常修复成功的情况下,所述目标业务节点对所述业务进行业务补偿,以恢复由于所述链路异常而中止的业务。
应当理解,在本发明实施例中,所称处理器801可以是中央处理单元(CentralProcessing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器804可以包括只读存储器和随机存取存储器,并向处理器801提供指令和数据。存储器804的一部分还可以包括非易失性随机存取存储器。例如,存储器804还可以存储设备类型的信息。
具体实现中,本发明实施例中所描述的处理器801、输入接口802、输出接口803可执行本发明实施例提供的一种多路链接异常处理方法和系统的各个实施例中所描述的实现方式,在此不再赘述。
在本发明的另一实施例中提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令被处理器执行时实现:在多路链接中的一路链接出现链路异常的情况下,向中转节点发送业务的异常信息;接收来自中转节点的异常处理策略;异常处理策略是中转节点根据目标业务节点的异常信息及一路链接中的其他出现异常的业务节点的异常信息,和目标业务节点的日志信息及其他出现异常的业务节点的日志信息确定的;目标业务节点根据异常处理策略进行链路异常修复;在链路异常修复成功的情况下,目标业务节点对业务进行业务补偿,以恢复由于链路异常而中止的业务。
所述计算机可读存储介质可以是前述任一实施例所述的电子设备的内部存储单元,例如终端的硬盘或内存。所述计算机可读存储介质也可以是所述终端的外部存储设备,例如所述终端上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述计算机可读存储介质还可以既包括所述电子设备的内部存储单元也包括外部存储设备。所述计算机可读存储介质用于存储所述计算机程序以及所述电子设备所需的其他程序和数据。所述计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的服务器、设备和单元的具体工作过程,可以参考前述方法实施例中的对应过程,也可执行发明实施例所描述的电子设备的实现方式,在此不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的服务器、设备和方法,可以通过其它的方式实现。例如,以上所描述的服务器实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (7)
1.一种多路链接异常处理方法,其特征在于,所述方法应用于多链路平台,所述多链路平台包括一个中转节点和多个业务节点,所述一个中转节点与所述多个业务节点形成多路链接;所述方法包括:
在所述多路链接中的一路链接出现链路异常的情况下,目标业务节点向所述中转节点发送业务的异常信息;
所述目标业务节点根据日志模板,对所述目标业务节点中的日志信息进行标准化处理,得到标准化的日志信息;将所述标准化的日志信息发送至所述中转节点;所述标准化的日志信息用于所述中转节点确定异常处理策略;
所述目标业务节点接收来自所述中转节点的异常处理策略;所述异常处理策略是所述中转节点根据所述目标业务节点的异常信息及所述一路链接中的其他出现异常的业务节点的异常信息,和所述目标业务节点的日志信息及其他出现异常的业务节点的日志信息确定的;其中,所述异常处理策略是所述中转节点根据根因的第一目标位置确定异常的根因后确定的;所述第一目标位置是正则表达式匹配标准化的日志信息中出现错误标识的各个日志段中,日志打印时间最早的日志段的所在位置;或者,所述第一目标位置是正则表达式匹配所述标准化的日志信息中出现错误标识的各个日志段中,日志错误等级最高的日志段的所在位置;各个日志段的内容为发生所述错误标识的原因;
所述目标业务节点根据所述异常处理策略进行链路异常修复;
在所述链路异常修复成功的情况下,所述目标业务节点对所述业务进行业务补偿,以恢复由于所述链路异常而中止的业务;
其中,在所述目标业务节点向所述中转节点发送业务的异常信息之前,还包括:所述目标业务节点处理所述业务,获得正常处理信息和异常处理信息;其中,所述正常处理信息表示正常处理所述业务的一部分内容得到的处理结果,所述异常处理信息表示异常处理所述业务的另一部分内容得到的处理结果;
所述目标业务节点对所述业务进行业务补偿,以恢复由于所述链路异常而中止的业务,包括:所述目标业务节点根据所述正常处理信息,确定所述业务的处理进度为已正常处理所述业务的一部分内容;根据所述异常处理信息,重新处理所述业务的另一部分内容,以得到正常处理所述业务的另一部分内容的处理结果;将所述正常处理所述业务的一部分内容得到的处理结果和所述正常处理所述业务的另一部分内容得到的处理结果作为所述目标业务节点对所述业务处理的结果。
2.根据权利要求1所述的方法,其特征在于,所述目标业务节点根据所述异常处理策略进行链路异常修复之后,所述方法还包括:
若所述目标业务节点根据所述异常处理策略进行链路异常修复所使用的时间超过预设时间阈值,则所述目标业务节点确定所述链路异常修复失败。
3.根据权利要求1所述的方法,其特征在于,所述目标业务节点根据所述异常处理策略进行链路异常修复之后,所述方法还包括:
若所述目标业务节点根据所述异常处理策略进行链路异常修复所使用的修复次数超过预设次数阈值,则所述目标业务节点确定所述链路异常修复失败。
4.根据权利要求2或3所述的方法,其特征在于,所述方法还包括:
在所述链路异常修复失败的情况下,所述目标业务节点根据所述日志信息获取所述异常信息的风险等级;
所述目标业务节点根据所述风险等级向所述目标业务节点所属的管理设备发送预警信息,所述预警信息分为不同等级,所述风险等级越高,所述预警信息的等级越高。
5.一种多路链接异常处理装置,其特征在于,所述装置应用于多链路平台,所述多链路平台包括一个中转节点和多个业务节点,所述一个中转节点与所述多个业务节点形成多路链接;所述装置包括:发送单元,接收单元,修复单元,补偿单元,
所述发送单元用于,在所述多路链接中的一路链接出现链路异常的情况下,向所述中转节点发送业务的异常信息;
所述接收单元用于,接收来自所述中转节点的异常处理策略;所述异常处理策略是所述中转节点根据目标业务节点的异常信息及所述一路链接中的其他出现异常的业务节点的异常信息,和所述目标业务节点的日志信息及其他出现异常的业务节点的日志信息确定的;其中,所述异常处理策略是所述中转节点根据根因的第一目标位置确定异常的根因后确定的;所述第一目标位置是正则表达式匹配标准化的日志信息中出现错误标识的各个日志段中,日志打印时间最早的日志段的所在位置;或者,所述第一目标位置是正则表达式匹配所述标准化的日志信息中出现错误标识的各个日志段中,日志错误等级最高的日志段的所在位置;各个日志段的内容为发生所述错误标识的原因;
所述修复单元用于,根据所述异常处理策略进行链路异常修复;
所述补偿单元用于,在所述链路异常修复成功的情况下,所述目标业务节点对所述业务进行业务补偿,以恢复由于所述链路异常而中止的业务;
所述装置还包括处理单元,所述处理单元用于,在所述目标业务节点向所述中转节点发送业务的异常信息之前,处理所述业务,获得正常处理信息和异常处理信息;其中,所述正常处理信息表示正常处理所述业务的一部分内容得到的处理结果,所述异常处理信息表示异常处理所述业务的另一部分内容得到的处理结果;
所述补偿单元还用于,根据所述正常处理信息,确定所述业务的处理进度为已正常处理所述业务的一部分内容;根据所述异常处理信息,重新处理所述业务的另一部分内容,以得到正常处理所述业务的另一部分内容的处理结果;将所述正常处理所述业务的一部分内容得到的处理结果和所述正常处理所述业务的另一部分内容得到的处理结果作为所述目标业务节点对所述业务处理的结果;
所述装置还包括日志单元,所述日志单元用于,在所述目标业务节点接收来自所述中转节点的异常处理策略之前,根据日志模板,对所述目标业务节点中的日志信息进行标准化处理,得到标准化的日志信息;将所述标准化的日志信息发送至所述中转节点;所述标准化的日志信息用于所述中转节点确定所述异常处理策略。
6.一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为调用所述存储器存储的指令,对所述指令的调用使得所述处理器执行权利要求1至4任意一项所述的方法。
7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行以实现权利要求1至4任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910420882.XA CN110245154B (zh) | 2019-05-20 | 2019-05-20 | 多路链接异常处理方法以及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910420882.XA CN110245154B (zh) | 2019-05-20 | 2019-05-20 | 多路链接异常处理方法以及相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110245154A CN110245154A (zh) | 2019-09-17 |
CN110245154B true CN110245154B (zh) | 2023-05-26 |
Family
ID=67884585
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910420882.XA Active CN110245154B (zh) | 2019-05-20 | 2019-05-20 | 多路链接异常处理方法以及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110245154B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111130934B (zh) * | 2019-12-20 | 2024-09-13 | 国铁吉讯科技有限公司 | 通信系统的监测方法、装置及系统 |
CN111522680A (zh) * | 2020-04-17 | 2020-08-11 | 支付宝(杭州)信息技术有限公司 | 一种自动修复异常任务节点的方法、装置及设备 |
CN112433997B (zh) * | 2020-11-20 | 2023-07-04 | 上海哔哩哔哩科技有限公司 | 数据修复方法及装置 |
CN112737856B (zh) * | 2020-12-31 | 2023-02-03 | 青岛海尔科技有限公司 | 链路追踪方法和装置、存储介质及电子装置 |
CN113220540B (zh) * | 2021-06-07 | 2023-04-25 | 深圳华锐分布式技术股份有限公司 | 业务管理方法、装置、计算机设备和存储介质 |
CN114257847A (zh) * | 2021-11-18 | 2022-03-29 | 苏州华兴源创科技股份有限公司 | 数据修正方法、装置、计算机设备及计算机可读存储介质 |
CN114862401B (zh) * | 2022-03-11 | 2024-09-17 | 浪潮通用软件有限公司 | 一种支付异常的处理方法、装置、设备及介质 |
CN115018622B (zh) * | 2022-05-25 | 2024-03-26 | 平安银行股份有限公司 | 业务重构系统的验证方法、装置、设备及可读存储介质 |
CN115827678B (zh) * | 2023-02-15 | 2023-05-23 | 零犀(北京)科技有限公司 | 一种获取业务数据的方法、装置、介质及电子设备 |
CN117593123A (zh) * | 2023-11-09 | 2024-02-23 | 浪潮通用软件有限公司 | 一种支付问题定位方法、装置、设备及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7869350B1 (en) * | 2003-01-15 | 2011-01-11 | Cisco Technology, Inc. | Method and apparatus for determining a data communication network repair strategy |
CN106250277A (zh) * | 2016-07-15 | 2016-12-21 | 浪潮(北京)电子信息产业有限公司 | 一种多路服务器系统及用于提高其稳定性的方法 |
CN109408262A (zh) * | 2018-09-26 | 2019-03-01 | 平安医疗健康管理股份有限公司 | 一种业务数据处理方法及相关设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10337465B4 (de) * | 2003-08-14 | 2009-10-15 | Nokia Siemens Networks Gmbh & Co.Kg | Verfahren zum Routing von Datenpaketen in einem mehrere Netzknoten aufweisenden paketvermittelnden Kommunikationsnetz |
-
2019
- 2019-05-20 CN CN201910420882.XA patent/CN110245154B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7869350B1 (en) * | 2003-01-15 | 2011-01-11 | Cisco Technology, Inc. | Method and apparatus for determining a data communication network repair strategy |
CN106250277A (zh) * | 2016-07-15 | 2016-12-21 | 浪潮(北京)电子信息产业有限公司 | 一种多路服务器系统及用于提高其稳定性的方法 |
CN109408262A (zh) * | 2018-09-26 | 2019-03-01 | 平安医疗健康管理股份有限公司 | 一种业务数据处理方法及相关设备 |
Also Published As
Publication number | Publication date |
---|---|
CN110245154A (zh) | 2019-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110245154B (zh) | 多路链接异常处理方法以及相关设备 | |
WO2020233066A1 (zh) | 基于数据计算链路的异常处理方法以及相关设备 | |
US7984334B2 (en) | Call-stack pattern matching for problem resolution within software | |
CN109614262B (zh) | 业务校验方法、装置及计算机可读存储介质 | |
US8768817B2 (en) | Transaction system | |
CN112087334B (zh) | 告警根因分析方法、电子设备和存储介质 | |
CN101918922A (zh) | 用于计算机网络中的自动数据异常修正的系统和方法 | |
US6845469B2 (en) | Method for managing an uncorrectable, unrecoverable data error (UE) as the UE passes through a plurality of devices in a central electronics complex | |
CN110706071A (zh) | 订单支付请求的异常处理方法、设备、服务器及系统 | |
CN112527484A (zh) | 工作流断点续跑方法、装置、计算机设备及可读存储介质 | |
CN110581887A (zh) | 数据处理方法、装置、区块链节点及存储介质 | |
CN113313594B (zh) | 订单处理方法、装置、电子设备、存储介质及程序产品 | |
CN111654405B (zh) | 通信链路的故障节点方法、装置、设备及存储介质 | |
CN111367934A (zh) | 数据一致性的检验方法、装置、服务器和介质 | |
JP5803246B2 (ja) | ネットワーク運用管理システム、ネットワーク監視サーバ、ネットワーク監視方法およびプログラム | |
CN112766963A (zh) | 结合区块链和数字货币的数据安全检测方法及云计算中心 | |
CN115378841B (zh) | 设备接入云平台状态的检测方法及装置、存储介质、终端 | |
JP2009181495A (ja) | ジョブ処理システムおよびジョブ管理方法 | |
CN103501251B (zh) | 断网情况下的数据包处理方法及装置 | |
JP6574310B2 (ja) | 評価情報のマッチング方法、装置及びサーバー | |
CN111708689B (zh) | 一种修改ab实验的方法、装置及电子设备 | |
JP4738429B2 (ja) | Ediシステムのフォーマット変換方法と装置およびプログラム | |
CN112035315A (zh) | 网页数据监控方法、装置、计算机设备及存储介质 | |
US20240160506A1 (en) | Operation support apparatus, system, method, and computer-readable medium | |
CN113377467B (zh) | 信息解耦方法、装置、服务器及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |