数据一致性的检测方法、装置、计算机设备和存储介质
技术领域
本申请涉及数据处理技术领域,特别是涉及一种数据一致性的检测方法、装置、计算机设备和存储介质。
背景技术
随着互联网技术的快速发展,数据之间的交互越来越频繁。目前,在银行贷款环节中,上游系统与下游系统之间的消息传递是同步的,没有消息补偿机制;若消息传递失败,导致数据缺失,很容易造成系统之间的数据不一致;故对系统之间的数据一致性进行检测,显得非常重要。
然而,传统对系统之间的数据一致性进行检测的方法,通常是通过人工手动单独对系统之间的数据进行比对,以检测出传递失败的数据,并通过修改传递失败的数据,以重新发送消息。但是,若系统之间的数据量过多,通过人工手动单独检测数据的过程比较繁琐,会耗费大量人力,从而降低了系统间的数据一致性的检测效率。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高系统间的数据一致性的检测效率的数据一致性的检测方法、装置、计算机设备和存储介质。
一种数据一致性的检测方法,所述方法包括:
获取待检测数据;
根据所述待检测数据,生成查询消息,将所述查询消息发送至消息队列中;所述查询消息用于获取所述待检测数据的反馈结果;
根据预设频率,从所述消息队列中读取目标终端根据所述查询消息生成的反馈消息;所述反馈消息携带所述待检测数据的所述反馈结果;
根据所述待检测数据的所述反馈结果,确定所述待检测数据的数据状态;根据所述待检测数据的数据状态,确定所述待检测数据的数据一致性。
在其中一个实施例中,所述根据所述待检测数据,生成查询消息,将所述查询消息发送至消息队列中,包括:
识别所述待检测数据的数据类型;
根据预设的数据类型与数据优先级别的对应关系,确定所述待检测数据的数据优先级别;
查询预设的数据与数据标识的对应关系,得到所述待检测数据的数据标识;
根据所述待检测数据以及所述待检测数据的数据标识和数据优先级别,生成查询消息;
将所述查询消息发送至与所述数据优先级别对应的消息队列中。
在其中一个实施例中,所述根据所述待检测数据的所述反馈结果,确定所述待检测数据的数据状态,包括:
从所述反馈结果中提取所述待检测数据的反馈值;
根据预设的反馈值与数据状态的对应关系,确定所述待检测数据的数据状态。
在其中一个实施例中,所述根据所述待检测数据的数据状态,确定所述待检测数据的数据一致性,包括:
若所述待检测数据的数据状态为完成状态,则确定所述待检测数据的数据一致;
若所述待检测数据的数据状态为未完成状态或者不存在状态,则确定所述待检测数据的数据不一致。
在其中一个实施例中,在根据所述待检测数据的数据状态,确定所述待检测数据的数据一致性之后,还包括:
根据所述待检测数据的数据状态,生成对应的日志记录;所述日志记录用于记录所述待检测数据的数据状态;
若所述日志记录为目标日志记录,将所述日志记录添加至与所述待检测数据对应的监控表中;所述目标日志记录用于记录数据不一致的待检测数据的数据状态。
在其中一个实施例中,所述方法还包括:
根据预设时间段扫描与所述待检测数据对应的监控表,得到对应的扫描结果;
从所述扫描结果中提取所述待检测数据的目标日志记录;
若所述目标日志记录的条数小于预设条数,则重新将所述查询消息发送至所述消息队列中;
若所述目标日志记录的条数大于或等于所述预设条数,则将所述待检测数据进行标记。
一种数据一致性的检测装置,所述装置包括:
数据获取模块,用于获取待检测数据;
消息生成模块,用于根据所述待检测数据,生成查询消息,将所述查询消息发送至消息队列中;所述查询消息用于获取所述待检测数据的反馈结果;
消息读取模块,用于根据预设频率,从所述消息队列中读取目标终端根据所述查询消息生成的反馈消息;所述反馈消息携带所述待检测数据的所述反馈结果;
结果确定模块,用于根据所述待检测数据的所述反馈结果,确定所述待检测数据的数据状态;根据所述待检测数据的数据状态,确定所述待检测数据的数据一致性。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取待检测数据;
根据所述待检测数据,生成查询消息,将所述查询消息发送至消息队列中;所述查询消息用于获取所述待检测数据的反馈结果;
根据预设频率,从所述消息队列中读取目标终端根据所述查询消息生成的反馈消息;所述反馈消息携带所述待检测数据的所述反馈结果;
根据所述待检测数据的所述反馈结果,确定所述待检测数据的数据状态;根据所述待检测数据的数据状态,确定所述待检测数据的数据一致性。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取待检测数据;
根据所述待检测数据,生成查询消息,将所述查询消息发送至消息队列中;所述查询消息用于获取所述待检测数据的反馈结果;
根据预设频率,从所述消息队列中读取目标终端根据所述查询消息生成的反馈消息;所述反馈消息携带所述待检测数据的所述反馈结果;
根据所述待检测数据的所述反馈结果,确定所述待检测数据的数据状态;根据所述待检测数据的数据状态,确定所述待检测数据的数据一致性。
上述数据一致性的检测方法、装置、计算机设备和存储介质,基于消息队列传递消息的方式,将获取待检测数据的反馈结果的查询消息发送至目标终端,降低了消息传递失败的可能性;根据目标终端返回的反馈结果,确定待检测数据的数据状态,进而确定待检测数据的数据一致性,无需通过人工手动单独对系统之间的数据进行比对,以检测出不一致的数据,从而简化了数据一致性的检测流程,提高了数据一致性的检测效率;同时,避免了人工手动单独对系统之间的数据进行检测而容易出错的缺陷,从而提高了数据一致性的检测准确性。
附图说明
图1为一个实施例中数据一致性的检测方法的应用场景图;
图2为一个实施例中数据一致性的检测方法的流程示意图;
图3为一个实施例中确定待检测数据的数据一致性的步骤的流程示意图;
图4为另一个实施例中数据一致性的检测方法的流程示意图;
图5为一个实施例中数据一致性的检测装置的结构框图;
图6为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的数据一致性的检测方法,可以应用于如图1所示的应用环境中。其中,测试终端110与目标终端120通过消息队列进行通信;测试终端110安装了上游系统,目标终端120安装了下游系统。测试终端110运行的上游系统根据业务检测需求,获取需要检测的业务数据,将需要检测的业务数据作为待检测数据;根据待检测数据,生成用于查询消息,将查询消息发送至消息队列中;查询消息用于获取待检测数据的反馈结果。目标终端120中运行的下游系统从消息队列中读取查询消息,得到待检测数据;根据待检测数据在下游系统中进行查询,得到待检测数据的反馈结果;根据待检测数据的反馈结果,生成反馈消息,并将反馈消息发送至消息队列中;反馈消息携带待检测数据的反馈结果。测试终端110根据预设频率,从消息队列中读取反馈消息,得到待检测数据的反馈结果,并对待检测数据的反馈结果进行解析,得到待检测数据的数据状态;根据待检测数据的数据状态,确定待检测数据的数据一致性。其中,测试终端110和目标终端120均可以但不限于是各种个人计算机、笔记本电脑、智能手机和平板电脑。
在一个实施例中,如图2所示,提供了一种数据一致性的检测方法,以该方法应用于图1中的测试终端为例进行说明,包括以下步骤:
步骤S201,获取待检测数据。
其中,待检测数据是指银行贷款、借贷等各种业务对应的业务数据,一般需要通过上游系统(比如APS系统)的业务人员受理,以及通过下游系统(比如审批系统)的业务人员审批处理,同时生成对应的审批结果。
测试终端中安装了上游系统,上游系统根据业务检测需求,获取上游系统中需要检测的业务数据,将需要检测的业务数据作为待检测数据。比如,测试终端获取上游系统中没有携带数据状态的业务数据,将没有携带数据状态的业务数据识别为待检测数据;数据状态用于标识业务数据的数据处理情况。
步骤S202,根据待检测数据,生成查询消息,将查询消息发送至消息队列中;查询消息用于获取待检测数据的反馈结果。
其中,反馈结果用于反馈待检测数据的数据状态;消息队列是指在消息传递的过程中存储消息的容器。
测试终端获取待检测数据的数据标识,数据标识是指用于标识待检测数据的标识信息,比如数据编号;将待检测数据以及对应的数据标识加载到预设查询消息模板中,生成用于获取待检测数据的反馈结果的查询消息,并将生成的查询消息通过上游系统接口发送至消息队列中,通过消息队列暂时存储查询消息;能够避免消息阻塞,从而有效地降低了消息传递失败的可能性;同时方便后续目标终端基于查询消息即可获取待检测数据的反馈结果。
步骤S203,根据预设频率,从消息队列中读取目标终端根据查询消息生成的反馈消息;反馈消息携带待检测数据的反馈结果。
目标终端安装了下游系统,下游系统可以供业务人员对待检测数据进行审批处理。目标终端中运行的下游系统从存储查询消息的消息队列中读取查询消息,得到待检测数据;根据待检测数据的数据标识在下游系统中进行查询,得到查询结果,基于查询结果,确定待检测数据的数据状态,以判断待检测数据是否存在,是否已经处理完成,是否处于处理中。目标终端根据确定的待检测数据的数据状态生成待检测数据的反馈结果,根据待检测数据的反馈结果,生成反馈消息,并将反馈消息发送至消息队列中;反馈消息携带待检测数据的反馈结果。测试终端根据预设频率,从同一消息队列中读取反馈消息,得到待检测数据的反馈结果,方便后续对待检测数据的反馈结果进行解析,以确定待检测数据的数据一致性。
步骤S204,根据待检测数据的反馈结果,确定待检测数据的数据状态;根据待检测数据的数据状态,确定待检测数据的数据一致性。
其中,数据一致性是指数据一致或者数据不一致;数据一致是指待检测数据在测试终端的上游系统中存在,同时在目标终端的下游系统中存在,且处于完成状态;除了这种情况,其他出现的情况都表示数据不一致。
具体实现中,测试终端对待检测数据的反馈结果进行解析,得到待检测数据的数据状态,若待检测数据在下游系统中存在,且处于完成状态,则确定待检测数据的数据一致;否则,则确定待检测数据的数据不一致。这样,通过待检测数据的反馈结果,即可确定待检测数据的数据是否一致,无需通过人工手动单独对系统之间的数据进行比对,以检测出不一致的数据,从而简化了数据一致性的检测流程,进一步提高了数据一致性的检测效率。
上述数据一致性的检测方法中,基于消息队列传递消息的方式,将获取待检测数据的反馈结果的查询消息发送至目标终端,降低了消息传递失败的可能性;根据目标终端返回的反馈结果,确定待检测数据的数据状态,进而确定待检测数据的数据一致性,无需通过人工手动单独对系统之间的数据进行比对,以检测出不一致的数据,从而简化了数据一致性的检测流程,提高了数据一致性的检测效率;同时,避免了人工手动单独对系统之间的数据进行检测而容易出错的缺陷,从而提高了数据一致性的检测准确性。
考虑到有些业务数据的数据优先级别比较高,需要优先检测,可以通过测试终端将相应的待检测数据,通过查询消息的形式,发送至数据优先级别较高的消息队列中。在一个实施例中,上述步骤S202,根据待检测数据,生成查询消息,将查询消息发送至消息队列中,包括:识别待检测数据的数据类型;根据预设的数据类型与数据优先级别的对应关系,确定待检测数据的数据优先级别;查询预设的数据与数据标识的对应关系,得到待检测数据的数据标识,根据待检测数据以及待检测数据的数据标识和数据优先级别,生成用查询消息;将查询消息发送至与数据优先级别对应的消息队列中。
本实施例中,数据类型是指待检测数据的业务类型,不同数据类型的待检测数据,对应的数据优先级别不一样。测试终端识别待检测数据的业务模板,将待检测数据的业务模板与已知业务模板进行匹配,若待检测数据的业务模板与已知业务模板匹配,则将该已知业务模板对应的业务类型识别为待检测数据的业务类型;根据待检测数据的业务类型,确定待检测数据的数据类型;根据待检测数据的数据类型,查询预设的数据类型与数据优先级别的对应关系,确定待检测数据的数据优先级别;查询预设的数据与数据标识的对应关系,得到待检测数据的数据标识;获取预设查询消息模板,将待检测数据以及待检测数据的数据标识和数据优先级别,依次加载到预设查询消息模板中,生成用于获取待检测数据的反馈结果的查询消息;将查询消息发送至与待检测数据的数据优先级别对应的消息队列中。将不同数据优先级别的待检测数据通过查询消息的形式发送至对应数据优先级别的消息队列中,可以避免消息阻塞,从而有效地降低了消息传递失败的可能性;同时方便后续目标终端基于查询消息即可获取待检测数据的反馈结果。
进一步地,测试终端通过目标终端返回的待检测数据的反馈结果,即可确定待检测数据的数据状态。在一个实施例中,如图3所示,根据待检测数据的反馈结果,确定待检测数据的数据状态的步骤具体包括:
步骤S301,从反馈结果中提取待检测数据的反馈值。
步骤S302,根据预设的反馈值与数据状态的对应关系,确定待检测数据的数据状态。
本实施例中,反馈值用于标识待检测数据的数据状态,反馈值与数据状态存在一一对应的关系;例如,若反馈值为-1,则确认待检测数据的数据状态为不存在状态,即待检测数据在目标终端的下游系统中不存在;若反馈值为0,则确认待检测数据数据状态为未完成状态,即待检测数据在目标终端的下游系统中存在,且处于未完成状态;若反馈值为1,则确认待检测数据数据状态为完成状态,即待检测数据在目标终端的下游系统中存在,且处于完成状态。
例如,测试终端从待检测数据的反馈结果中提取出待检测数据的反馈值,根据待检测数据的反馈值,查询预设的反馈值与数据状态的对应关系,确定与提取出的反馈值对应的数据状态,将该数据状态识别为待检测数据的数据状态;这样,方便后续对待检测数据的数据状态进行分析,以确定待检测数据的数据一致性,无需通过人工手动单独对系统之间的数据进行比对,以检测出不一致的数据,从而简化了数据一致性的检测流程,提高了数据一致性的检测效率;同时,避免了人工手动单独对系统之间的数据进行检测而容易出错的缺陷,从而提高了数据一致性的检测准确性。
在一个实施例中,上述步骤S204,根据待检测数据的数据状态,确定待检测数据的数据一致性,包括:若待检测数据的数据状态为完成状态,则确定待检测数据的数据一致;若待检测数据的数据状态为未完成状态或者不存在状态,则确定待检测数据的数据不一致。
例如,若待检测数据的数据状态为完成状态,说明待检测数据在目标终端的下游系统存在,且处于完成状态,则确定在检测之前,测试终端的上游系统已成功将待检测数据发送至目标终端,并通过目标终端的下游系统审批处理完毕,由此可见上游系统和下游系统之间的待检测数据的数据一致;若待检测数据的数据状态为未完成状态,说明待检测数据在目标终端的下游系统存在,且处于未完成状态,则确定在检测之前,测试终端的上游系统已成功将待检测数据发送至目标终端,但目标终端的下游系统并未审批处理完毕,由此可见上游系统和下游系统之间的待检测数据的数据不一致;若待检测数据的数据状态为不存在状态,说明待检测数据在目标终端的下游系统中不存在,则确定在检测之前,测试终端的上游系统未成功将待检测数据发送至目标终端,导致目标终端的下游系统无法对待检测数据进行审批处理,由此可见上游系统和下游系统之间的待检测数据的数据不一致。通过对待检测数据的数据状态进行分析,可以有效地确定待检测数据的数据一致性,无需通过人工手动单独对系统之间的数据进行比对,以检测出不一致的数据,从而简化了数据一致性的检测流程,提高了数据一致性的检测效率。
进一步地,在确定待检测数据的数据状态之后,还可以通过日志记录的形式对待检测数据的数据状态进行记录,便于业务人员对待检测数据进行管理。在一个实施例中,上述步骤S204,在根据待检测数据的数据状态,确定待检测数据的数据一致性之后,还包括:根据待检测数据的数据状态,生成对应的日志记录;日志记录用于记录待检测数据的数据状态;若日志记录为目标日志记录,将日志记录添加至与待检测数据对应的监控表中;目标日志记录用于记录数据不一致的待检测数据的数据状态。
例如,若待检测数据的数据状态为完成状态,则确定待检测数据的数据一致;根据待检测数据的数据状态,生成第一日志记录,以记录数据一致的待检测数据的数据状态,表示无需进行再次检测;若待检测数据的数据状态为未完成状态或者不存在状态,则确定待检测数据的数据不一致;根据待检测数据的数据状态,生成目标日志记录,以记录数据不一致的待检测数据的数据状态,表示需要进行再次检测;测试终端对待检测数据的日志记录进行检测,若日志记录为目标日志记录,则将日志记录添加至与待检测数据对应的监控表中。通过将待检测数据的数据状态对应的目标日志记录添加至相应的监控表中,方便后续通过查看监控表的日志记录,即可对待检测数据的数据状态进行监控。
此外,测试终端还可以对监控表进行扫描,以查看待检测数据的数据状态。在一个实施例中,数据一致性的检测方法还包括:根据预设时间段扫描与待检测数据对应的监控表,得到对应的扫描结果;从扫描结果中提取待检测数据的目标日志记录;若目标日志记录的条数小于预设条数,则重新将查询消息发送至消息队列中;若目标日志记录的条数大于或等于预设条数,则将待检测数据进行标记。例如,目标终端中运行的上游系统在预设时间段(比如深夜,与业务人员的工作时间错开)启动扫描与待检测数据对应的监控表,得到对应的扫描结果;从扫描结果中提取待检测数据的目标日志记录,对待检测数据的目标日志记录进行统计;若目标日志记录的条数小于3条,则重新将查询消息发送至消息队列中,以重新提交待检测数据到目标终端的下游系统,以提醒下游系统的业务人员及时对待检测数据进行审批处理,有利于降低系统之间的数据不一致的概率。若目标日志记录的条数大于或等于3条,则将相应的待检测数据进行标记,后期通过人工单独对该标记的待检测数据进行处理。本实施例中,通过在预设时间段扫描监控表,以对待检测数据的目标日志记录进行统计,并根据统计结果采取相应的处理策略,从而有效地降低了系统之间的数据不一致的概率。
进一步地,若测试终端中运行的上游系统确认到待检测数据的数据状态为“回退再处理”状态时,说明需要通过用户对该待检测数据进行修改,以重新发送请求至上游系统,并通过上游系统再次发送查询消息至消息队列中。在一个实施例中,上述步骤S204,在根据待检测数据的反馈结果,确定待检测数据的数据状态之后,还包括:若待检测数据的数据状态为回退再处理状态,根据待检测数据生成修改请求;将修改请求发送至服务器;修改请求用于触发服务器将修改请求发送至用户终端,以使用户修改待检测数据;接收用户终端通过服务器发送的修改后的待检测数据;根据修改后的待检测数据重新生成查询消息,将查询消息发送至消息队列中。
例如,测试终端若确定待检测数据的数据状态为回退再处理状态,则根据待检测数据生成修改请求,将修改请求发送至服务器;服务器将修改请求发送至用户终端,通过用户终端的显示界面显示待检测数据,以供用户对待检测数据进行修改;用户终端检测到用户对待检测数据的修改操作,得到修改后的待检测数据,并将修改后的待检测数据发送至服务器,通过服务器将修改后的待检测数据发送至测试终端的上游系统;测试终端的上游系统根据修改后的待检测数据重新生成查询消息,并将查询消息发送至消息队列中。本实施例,充分考虑了待检测数据的数据状态为“回退再处理”状态的情况,进一步降低了系统之间数据不一致的概率。
在一个实施例中,如图4所示,提供了另一种数据一致性的检测方法,具体包括以下步骤:
步骤S401,获取待检测数据。
步骤S402,根据待检测数据,生成查询消息,将查询消息发送至消息队列中;查询消息用于获取待检测数据的数据状态。
步骤S403,根据预设频率,从消息队列中读取目标终端根据查询消息生成的反馈消息;反馈消息携带待检测数据的反馈结果。
步骤S404,从反馈结果中提取待检测数据的反馈值;根据预设的反馈值与数据状态的对应关系,确定待检测数据的数据状态。
步骤S405,若待检测数据的数据状态为完成状态,则确定待检测数据的数据一致;若待检测数据的数据状态为未完成状态或者不存在状态,则确定待检测数据的数据不一致。
步骤S406,根据待检测数据的数据状态,生成对应的日志记录;日志记录用于记录待检测数据的数据状态;若日志记录为目标日志记录,将日志记录添加至与待检测数据对应的监控表中;目标日志记录用于记录数据不一致的待检测数据的数据状态。
步骤S407,根据预设时间段扫描与待检测数据对应的监控表,得到对应的扫描结果;从扫描结果中提取待检测数据的目标日志记录;若目标日志记录的条数小于预设条数,则重新将查询消息发送至消息队列中;若目标日志记录的条数大于或等于预设条数,则将待检测数据进行标记。
上述数据一致性的检测方法中,基于消息队列传递消息的方式,将获取待检测数据的反馈结果的查询消息发送至目标终端,降低了消息传递失败的可能性;根据目标终端返回的反馈结果,确定待检测数据的数据状态,进而确定待检测数据的数据一致性,无需通过人工手动单独对系统之间的数据进行比对,以检测出不一致的数据,从而简化了数据一致性的检测流程,提高了数据一致性的检测效率;同时,通过在预设时间段扫描监控表,以对待检测数据的目标日志记录进行统计,并根据统计结果采取相应的处理策略,从而有效地降低了系统之间的数据不一致的概率。
应该理解的是,虽然图2-4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-4中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图5所示,提供了一种数据一致性的检测装置,包括:数据获取模块510、消息生成模块520、消息读取模块530和结果确定模块540,其中:
数据获取模块510,用于获取待检测数据。
消息生成模块520,用于根据待检测数据,生成查询消息,将查询消息发送至消息队列中;查询消息用于获取待检测数据的反馈结果。
消息读取模块530,用于根据预设频率,从消息队列中读取目标终端根据查询消息生成的反馈消息;反馈消息携带待检测数据的反馈结果。
结果确定模块540,用于根据待检测数据的反馈结果,确定待检测数据的数据状态;根据待检测数据的数据状态,确定待检测数据的数据一致性。
在一个实施例中,消息生成模块还用于识别待检测数据的数据类型;根据预设的数据类型与数据优先级别的对应关系,确定待检测数据的数据优先级别;查询预设的数据与数据标识的对应关系,得到待检测数据的数据标识;根据待检测数据以及待检测数据的数据标识和数据优先级别,生成查询消息;将查询消息发送至与数据优先级别对应的消息队列中。
在一个实施例中,结果确定模块还用于从反馈结果中提取待检测数据的反馈值;根据预设的反馈值与数据状态的对应关系,确定待检测数据的数据状态。
在一个实施例中,结果确定模块还用于若待检测数据的数据状态为完成状态,则确定待检测数据的数据一致;若待检测数据的数据状态为未完成状态或者不存在状态,则确定待检测数据的数据不一致。
在一个实施例中,数据一致性的检测装置还包括记录生成模块,用于结果确定模块根据待检测数据的数据状态,确定待检测数据的数据一致性的检测结果之后,根据待检测数据的数据状态,生成对应的日志记录;日志记录用于记录待检测数据的数据状态;若日志记录为目标日志记录,将日志记录添加至与待检测数据对应的监控表中;目标日志记录用于记录数据不一致的待检测数据的数据状态。
在一个实施例中,数据一致性的检测装置还包括监控表扫描模块,用于根据预设时间段扫描与待检测数据对应的监控表,得到对应的扫描结果;从扫描结果中提取待检测数据的目标日志记录;若目标日志记录的条数小于预设条数,则重新将查询消息发送至所述消息队列中;若目标日志记录的条数大于或等于预设条数,则将待检测数据进行标记。
上述各个实施例,数据一致性的检测装置基于消息队列传递消息的方式,将获取待检测数据的反馈结果的查询消息发送至目标终端,降低了消息传递失败的可能性;根据目标终端返回的反馈结果,确定待检测数据的数据状态,进而确定待检测数据的数据一致性,无需通过人工手动单独对系统之间的数据进行比对,以检测出不一致的数据,从而简化了数据一致性的检测流程,提高了数据一致性的检测效率;同时,避免了人工手动单独对系统之间的数据进行检测而容易出错的缺陷,从而提高了数据一致性的检测准确性。
关于数据一致性的检测装置的具体限定可以参见上文中对于数据一致性的检测方法的限定,在此不再赘述。上述数据一致性的检测装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种数据一致性的检测方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
获取待检测数据;
根据待检测数据,生成查询消息,将查询消息发送至消息队列中;查询消息用于获取待检测数据的反馈结果;
根据预设频率,从消息队列中读取目标终端根据查询消息生成的反馈消息;反馈消息携带待检测数据的反馈结果;
根据待检测数据的反馈结果,确定待检测数据的数据状态;根据待检测数据的数据状态,确定待检测数据的数据一致性。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:识别待检测数据的数据类型;根据预设的数据类型与数据优先级别的对应关系,确定待检测数据的数据优先级别;查询预设的数据与数据标识的对应关系,得到待检测数据的数据标识,根据待检测数据以及待检测数据的数据标识和数据优先级别,生成查询消息;将查询消息发送至与数据优先级别对应的消息队列中。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:从反馈结果中提取待检测数据的反馈值;根据预设的反馈值与数据状态的对应关系,确定待检测数据的数据状态。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:若待检测数据的数据状态为完成状态,则确定待检测数据的数据一致;若待检测数据的数据状态为未完成状态或者不存在状态,则确定待检测数据的数据不一致。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据待检测数据的数据状态,确定待检测数据的数据一致性的检测结果之后,根据待检测数据的数据状态,生成对应的日志记录;日志记录用于记录待检测数据的数据状态;若日志记录为目标日志记录,将日志记录添加至与待检测数据对应的监控表中;目标日志记录用于记录数据不一致的待检测数据的数据状态。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据预设时间段扫描与待检测数据对应的监控表,得到对应的扫描结果;从扫描结果中提取待检测数据的目标日志记录;若目标日志记录的条数小于预设条数,则重新将查询消息发送至所述消息队列中;若目标日志记录的条数大于或等于预设条数,则将待检测数据进行标记。
上述各个实施例,计算机设备通过处理器上运行的计算机程序,实现了根据目标终端返回的反馈结果,确定待检测数据的数据一致性的检测结果的目的,无需通过人工手动单独对系统之间的数据进行比对,以检测出不一致的数据,从而简化了数据一致性的检测流程,提高了数据一致性的检测效率。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取待检测数据;
根据待检测数据,生成查询消息,将查询消息发送至消息队列中;查询消息用户获取待检测数据的反馈结果;
根据预设频率,从消息队列中读取目标终端根据查询消息生成的反馈消息;反馈消息携带待检测数据的反馈结果;
根据待检测数据的反馈结果,确定待检测数据的数据状态;根据待检测数据的数据状态,确定待检测数据的数据一致性。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:识别待检测数据的数据类型;根据预设的数据类型与数据优先级别的对应关系,确定待检测数据的数据优先级别;查询预设的数据与数据标识的对应关系,得到待检测数据的数据标识;根据待检测数据以及待检测数据的数据标识和数据优先级别,生成查询消息;将查询消息发送至与数据优先级别对应的消息队列中。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:从反馈结果中提取待检测数据的反馈值;根据预设的反馈值与数据状态的对应关系,确定待检测数据的数据状态。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:若待检测数据的数据状态为完成状态,则确定待检测数据的数据一致;若待检测数据的数据状态为未完成状态或者不存在状态,则确定待检测数据的数据不一致。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据待检测数据的数据状态,确定待检测数据的数据一致性的检测结果之后,根据待检测数据的数据状态,生成对应的日志记录;日志记录用于记录待检测数据的数据状态;若日志记录为目标日志记录,将日志记录添加至与待检测数据对应的监控表中;目标日志记录用于记录数据不一致的待检测数据的数据状态。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据预设时间段扫描与待检测数据对应的监控表,得到对应的扫描结果;从扫描结果中提取待检测数据的目标日志记录;若目标日志记录的条数小于预设条数,则重新将查询消息发送至所述消息队列中;若目标日志记录的条数大于或等于预设条数,则将待检测数据进行标记。
上述各个实施例,计算机可读存储介质通过其存储的计算机程序,实现了根据目标终端返回的反馈结果,确定待检测数据的数据一致性的检测结果的目的,无需通过人工手动单独对系统之间的数据进行比对,以检测出不一致的数据,从而简化了数据一致性的检测流程,提高了数据一致性的检测效率。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。