[发明专利]一种交易超时监控方法及装置有效
| 申请号: | 201810790907.0 | 申请日: | 2018-07-18 |
| 公开(公告)号: | CN109117295B | 公开(公告)日: | 2022-02-18 |
| 发明(设计)人: | 乔子木;缪海波;刘蓉 | 申请(专利权)人: | 中国银联股份有限公司 |
| 主分类号: | G06F11/07 | 分类号: | G06F11/07 |
| 代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 黄志华 |
| 地址: | 200135 *** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 交易 超时 监控 方法 装置 | ||
本发明实施例涉及数据处理技术领域,尤其涉及一种交易超时监控方法及装置,用以降低超时交易的处理延时。本发明实施例包括:确定交易的交易处理时长;根据所述交易的交易处理时长将所述交易划分至监控分组中;在不同的时间点对相应监控分组中的交易进行超时判断;将判定为超时的交易进行交易超时处理。
技术领域
本发明涉及数据处理技术领域,尤其涉及一种交易超时监控方法及装置。
背景技术
现有的技术监控交易超时,主要通过轮询数据库流水表的记录来批量处理。例如一笔交易信息存入数据库时会设定处理起始时间和处理结束时间,当交易结束时会设定交易状态标记。在交易框架中存在一个单独的进程进行数据库轮询,每隔X秒进行一次轮询,以检测数据库流水中是否有超时标记未结束,但已经超过了处理时长的交易。对这些超时交易,轮询进程会更新超时标记后进行交易超时处理。对于超时的交易立即进行处理,对未达到交易处理时长的交易则等待至下一个轮询周期进行超时判定。
现有技术中的方法实现较为简单,但是有着很明显的缺点。超时轮询进程会每隔一段时间进行一次轮询,对于未到处理结束时间的交易会等待到下一次轮询处理。这样的工作方式无法正确的处理处在超时临界点的交易。假设轮询周期有30s,当一笔交易被轮询进程轮询到时还差1s到达处理结束时间,由于本次无法标记为超时交易,只能等待30s以后的下一次轮询才能处理,这样就会产生很大处理延时。
发明内容
本申请提供一种交易超时监控方法及装置,用以降低超时交易的处理延时。
本发明实施例提供的一种交易超时监控方法,包括:
确定交易的交易处理时长;
根据所述交易的交易处理时长将所述交易划分至监控分组中;
在不同的时间点对相应监控分组中的交易进行超时判断;
将判定为超时的交易进行交易超时处理。
可选的,一个监控分组为时间轮定时器的一个数组槽;
所述根据所述交易的交易处理时长将所述交易划分至监控分组中,包括:
根据所述交易的交易处理时长以及所述时间轮定时器的数组槽数量,确定所述交易对应的数组槽的编号以及所述交易的轮询次数;
将所述交易放入对应的数组槽中;
所述在不同的时间点对相应监控分组中的交易进行超时判定,包括:
确定所述时间轮定时器的槽指针指向的待判定数组槽;
判定所述待判定数据槽中轮询次数为0的交易为超时交易;
所述时间轮定时器的槽指针按规定时间间隔进行跳转,每跳转一次所述槽指针指向相邻的下一数组槽;
所述时间轮定时器的槽指针每指向一个数组槽,将所述槽指针指向的数组槽中各交易的轮询次数减1。
可选的,根据以下公式计算所述交易对应的数组槽编号:
N=(T+m)mod(L·s)
根据以下公式计算所述交易的轮询次数:
R=(T+m)div(L·s)
其中,N为所述交易对应的数据槽编号;R为所述交易的轮询次数;T为所述交易的交易处理时长;m为当前所述槽指针指向的数组槽的编号;L为所述时间轮定时器的数组槽的数量;s为所述槽指针跳转一次的时间间隔。
可选的,所述将判定为超时的交易进行交易超时处理包之前,还包括:
接收到所述交易的交易完成消息;
将所述交易从所述监控分组中移除。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国银联股份有限公司,未经中国银联股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810790907.0/2.html,转载请声明来源钻瓜专利网。





