欢迎光临小豌豆知识网!
当前位置:首页 > 电学技术 > 电通讯技术> 交互文件检测方法、装置、终端及存储介质独创技术40647字

交互文件检测方法、装置、终端及存储介质

2021-02-19 19:17:16

交互文件检测方法、装置、终端及存储介质

  技术领域

  本发明涉及计算机技术领域,尤其涉及一种交互文件检测方法、装置、终端及计算机可读存储介质。

  背景技术

  场外交易系统在与其他系统交互的过程中,经常存在某个机构的清算确认文件不按时发送过来,或者遗漏某个文件没有发送过来,或者发送重复的问题。当文件未接收到时,场外交易系统会频繁调用查询接口查询文件,这将占用系统大量资源,降低系统的运行效率,当接收到过多的重复文件时,也将增大系统资源的消耗。

  发明内容

  鉴于以上内容,有必要提供一种交互文件检测方法、装置、终端及计算机可读存储介质,可提高检测场外交易系统的交互文件的时效性,减少系统资源的消耗。

  本发明提供一种交互文件检测方法,所述方法包括:

  基于Quartz编码设置任务,在所述任务指示的第一预设时间达到时查询场外交易系统的第一接口,获取待检测任务;

  根据所述待检测任务确定待检测文件;

  调用所述场外交易系统的第二接口访问指定目录,检测所述指定目录中是否存在所述待检测文件;

  若检测到存在所述待检测文件,通过第一散列算法计算所述待检测文件的第一散列值,以及在第一时间之后通过所述第一散列算法计算所述待检测文件的第二散列值;

  判断所述第一散列值与所述第二散列值是否相同;

  若所述第一散列值与所述第二散列值相同,校验所述待检测文件是否准确;

  若确定所述待检测文件准确,确定完成接收所述待检测文件,更新文件检测状态表,所述文件检测状态表包括所述待检测文件的存在状态和所述待检测文件的接收时间。

  在本发明可选实施例中,所述校验所述待检测文件是否准确之后,所述方法还包括:

  若确定所述待检测文件准确,对所述待检测文件进行分片,得到第一文件数据集合,所述第一文件数据集合包括若干片文件数据;

  通过哈希算法计算每片文件数据的哈希值,将所得到的哈希值进行汇集,得到第一特征哈希结果;

  第二时间之后,再次对所述待检测文件进行分片,得到第二文件数据集合,通过所述哈希算法计算每片文件数据的哈希值,将所得到的哈希值进行汇集,得到第二特征哈希结果;

  通过相似性算法计算所述第一特征哈希结果与所述第一特征哈希结果的相似度;

  若所述相似度大于预设相似度,确定所述待检测文件未更新;

  若所述相似度小于预设相似度,确定所述待检测文件已更新,发送文件更新消息。

  在本发明可选实施例中,所述通过第一散列算法计算所述待检测文件的第一散列值,以及在第一时间之后通过所述第一散列算法计算所述待检测文件的第二散列值,包括:

  获取所述待检测文件的第一尾部数据;

  通过第二散列算法和所述第一尾部数据,计算所述待检测文件的第一散列值;

  在第一时间之后获取所述待检测文件的第二尾部数据,所述第二尾部数据的字节数和所述第一尾部数据的字节数相同;

  通过所述第二散列算法和所述第二尾部数据,计算所述待检测文件的第二散列值。

  在本发明可选实施例中,所述判断所述第一散列值与所述第二散列值是否相同之后,所述方法还包括:

  若所述第一散列值与所述第二散列值不相同,第三时间之后再次通过所述第一散列算法计算所述待检测文件的第三散列值;

  判断所述第三散列值与所述第一散列值是否相同;

  若所述第三散列值与所述第一散列值不相同,计算所述待检测文件的大小;

  若所述待检测文件的大小小于第一值或者所述待检测文件的大小大于第二值,发送文件错误提醒。

  在本发明可选实施例中,所述检测所述指定目录中是否存在所述待检测文件之后,所述方法还包括:

  若所述指定目录中不存在所述待检测文件,调用消息通知系统的接口发送文件超时效提醒消息。

  本发明还提供一种交互文件检测装置,所述装置包括:

  查询模块,用于基于Quartz编码设置任务,在所述任务指示的第一预设时间达到时查询场外交易系统的第一接口,获取待检测任务;

  确定模块,用于根据所述待检测任务确定待检测文件;

  检测模块,用于调用所述场外交易系统的第二接口访问指定目录,检测所述指定目录中是否存在所述待检测文件;

  计算模块,用于当检测到存在所述待检测文件时,通过第一散列算法计算所述待检测文件的第一散列值,以及在第一时间之后通过所述第一散列算法计算所述待检测文件的第二散列值;

  判断模块,用于判断所述第一散列值与所述第二散列值是否相同;

  校验模块,用于若所述第一散列值与所述第二散列值相同,校验所述待检测文件是否准确;

  更新模块,用于若确定所述待检测文件准确,确定完成接收所述待检测文件,更新文件检测状态表,所述文件检测状态表包括所述待检测文件的存在状态和所述待检测文件的接收时间。

  在本发明可选实施例中,所述装置还包括更新检测模块,所述更新检测模块用于:

  若确定所述待检测文件准确,对所述待检测文件进行分片,得到第一文件数据集合,所述第一文件数据集合包括若干片文件数据;

  通过哈希算法计算每片文件数据的哈希值,将所得到的哈希值进行汇集,得到第一特征哈希结果;

  第二时间之后,再次对所述待检测文件进行分片,得到第二文件数据集合,通过所述哈希算法计算每片文件数据的哈希值,将所得到的哈希值进行汇集,得到第二特征哈希结果;

  通过相似性算法计算所述第一特征哈希结果与所述第一特征哈希结果的相似度;

  若所述相似度大于预设相似度,确定所述待检测文件未更新;

  若所述相似度小于预设相似度,确定所述待检测文件已更新,发送文件更新消息。

  在本发明可选实施例中,所述计算模块具体用于:

  若检测到存在所述待检测文件,获取所述待检测文件的第一尾部数据;

  通过第二散列算法和所述第一尾部数据,计算所述待检测文件的第一散列值;

  在第一时间之后获取所述待检测文件的第二尾部数据,所述第二尾部数据的字节数和所述第一尾部数据的字节数相同;

  通过所述第二散列算法和所述第二尾部数据,计算所述待检测文件的第二散列值。

  在本发明可选实施例中,所述装置还包括提醒模块,所述提醒模块用于:

  判断所述第一散列值与所述第二散列值是否相同之后,若所述第一散列值与所述第二散列值不相同,第三时间之后再次通过所述第一散列算法计算所述待检测文件的第三散列值;

  判断所述第三散列值与所述第一散列值是否相同;

  若所述第三散列值与所述第一散列值不相同,计算所述待检测文件的大小;

  若所述待检测文件的大小小于第一值或者所述待检测文件的大小大于第二值,发送文件错误提醒。

  在本发明可选实施例中,所述提醒模块还用于若所述指定目录中不存在所述待检测文件,调用消息通知系统的接口发送文件超时效提醒消息。

  本发明还提供一种终端,所述终端包括存储器及处理器,所述存储器用于存储至少一个指令,所述处理器用于执行所述至少一个指令以实现任意实施例中所述的交互文件检测方法。

  本发明还提供一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有至少一个指令,所述至少一个指令被处理器执行时实现任意实施例中所述的交互文件检测方法。

  由以上技术方案看出,本发明提供一种交互文件检测方法、装置、终端及计算机可读存储介质,基于Quartz编码设置任务,在所述任务指示的第一预设时间达到时查询场外交易系统的第一接口,获取待检测任务;根据所述待检测任务确定待检测文件;调用所述场外交易系统的第二接口访问指定目录,检测所述指定目录中是否存在所述待检测文件;若检测到存在所述待检测文件,通过第一散列算法计算所述待检测文件的第一散列值,以及在第一时间之后通过所述第一散列算法计算所述待检测文件的第二散列值;判断所述第一散列值与所述第二散列值是否相同;若所述第一散列值与所述第二散列值相同,校验所述待检测文件是否准确;若确定所述待检测文件准确,确定完成接收所述待检测文件,更新文件检测状态表,所述文件检测状态表包括所述待检测文件的存在状态和所述待检测文件的接收时间。从而能够及时地进行文件检测,以及对文件是否正确进行检测,实现了提高检测场外交易系统的交互文件的时效性,减少系统资源的消耗的目的,进一步的,通过对文件的准确性进行校验,避免了因文件异常导致的数据缺失、数据不一致等问题,减少系统故障率。

  附图说明

  为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

  图1是本发明实施例提供的交互文件检测方法的流程图;

  图2是本发明实施例中一种与场外交易系统进行交互的示意图;

  图3是本发明实施例提供的交互文件检测装置的功能模块图;

  图4是本发明实现交互文件检测方法的较佳实施例的终端的结构示意图。

  具体实施方式

  下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

  为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。

  如图1所示,图1为本发明实施例提供的一种交互文件检测方法的流程图。根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。

  S11,基于Quartz编码设置任务,在所述任务指示的第一预设时间达到时查询场外交易系统的第一接口,获取待检测任务。

  本实例中,场外交易系统可以是基于金证的KCBP框架所构建的。

  所述待检测任务包括待检测的与交互方进行交互的文件,具体的,文件的数量可以为一个或多个。

  所述Quartz可以进行任务调度。具体的,Quartz包括任务调度器(Scheduler)、触发器(Trigger)、详细任务(JobDetail&Job)。

  S12,根据所述待检测任务确定待检测文件。

  具体的,所述根据所述待检测任务确定待检测文件包括:解析所述待检测任务,获取所述待检测任务包含的待检测文件。

  S13,调用所述场外交易系统的第二接口访问指定目录,检测所述指定目录中是否存在所述待检测文件。

  本实施例中,通过调用第二接口访问指定目录所检测的待检测文件与通过第一接口获取待检测任务进而确定的待检测文件为同一文件。

  例如,查询场外交易系统的第一接口,获场外交易系统返回的任务数据,通过解析该任务数据确定待检测文件为A文件,进而调用场外交易系统的第二接口访问指定目录,检测是否存在A文件。

  在一可选实施例中,所述待检测文件可为非对称加密算法加密的文件。

  请参见图2,图2是本发明实施例中一种与场外交易系统进行交互的示意图。

  在图2中,OTC清算系统为场外交易系统的一部分,即OTC清算系统为场外交易系统的子系统。在图2中,通过OTCPLUS调用OTC清算系统的第二接口,访问指定目录,在该指定目录中查找待检测文件。

  进一步,在访问指定目录之前,基于Kerberos认证协议与场外交易系统进行安全认证,包括:

  向Kerberos服务的密钥分发中心申请第一请求,用建立与密钥分发中心的安全会话;

  在密钥分发中心接收到申请的第一请求之后,解析第一请求中的参数,生成标识数据,并以请求指定的用户名的秘钥进行加密返回响应请求,该响应请求中包含生成的标识数据。

  在接收到密钥分发中心返回的响应请求之后,解析获取标识数据,以及基于标识数据向密钥分发中心发送消息以获取场外交易系统的服务标识。

  当密钥分发中心接受到该消息,并校验服务标志通过之后,生成并返回场外交易系统的交易标识。

  当接收到返回的交易标识之后,将交易标识传输至场外交易系统,在接受到场外交易系统返回的认证结果之后,确定与场外交易系统建立连接。

  可选的,所述检测所述指定目录中是否存在所述待检测文件之后,所述方法还包括:

  若所述指定目录中不存在所述待检测文件,调用消息通知系统的接口发送文件超时效提醒消息。

  在本实施例中,调用消息通知系统的接口时可以通过邮件或者短信的形式发送文件超时效提醒消息。

  通过调用消息通知系统的接口发送文件超时效提醒消息,能够及时的传递文件不存在的消息,进而有利于及时获取数据,避免到清算使用数据时查询不到文件。

  S14,若检测到存在所述待检测文件,通过第一散列算法计算所述待检测文件的第一散列值,以及在第一时间之后通过所述第一散列算法计算所述待检测文件的第二散列值。

  本实施例中,通过第一散列算法计算所述待检测文件的第一散列值包括:通过第一散列算法将待检测文件的信息摘要变换成固定长度的输出,该输出为第一散列值。

  本实施例中,在第一时间时候,获取与前一次获取的文件名称相同的待检测文件,通过在不同时间计算同一名称的文件的散列值,以确定文件内容是否相同。

  在本发明其他可选实施例中,可以每间隔一段时间计算一次文件的散列值。

  本实施例中,所述第一时间可为预先设定的。进一步的,所述方法还包括通过待检测文件的预测大小确定所述第一时间。

  例如,若检测到存在A基金公司的02文件,则通过第一散列算法计算该02文件的第一散列值,间隔10分钟之后,再次通过同样的散列算法计算待检测文件的第二散列值。

  进一步的,所述通过第一散列算法计算所述待检测文件的第一散列值,以及在第一时间之后通过所述第一散列算法计算所述待检测文件的第二散列值,包括:

  获取所述待检测文件的第一尾部数据;

  通过第二散列算法和所述第一尾部数据,计算所述待检测文件的第一散列值;

  在第一时间之后获取所述待检测文件的第二尾部数据,所述第二尾部数据的字节数和所述第一尾部数据的字节数相同;

  通过所述第二散列算法和所述第二尾部数据,计算所述待检测文件的第二散列值。

  在本实施中,获取所述待检测文件的第一尾部数据包括:通过设置偏移量从文件的指定位置(如结尾)读取文件内容,得到第一尾部数据。

  类似的,在第一时间之后通过设置偏移量从文件的指定位置(如结尾)读取文件内容,得到第二尾部数据。

  在本实施例中,通过获取相同字节数的文件内容,从而可以快速的得到第一散列值和第二散列值,进而匹配第一散列值和第二散列值的大小,有利于提高比较的速度。

  S15,判断所述第一散列值与所述第二散列值是否相同。

  本实施例中,当第一散列值与第二散列值相同时,确定待检测文件存在且传输完毕;当第一散列值与第二散列值不相同时,确定待检测文件未传输完毕。

  本实施例通过多次计算待检测文件的散列值,不仅可以确定待检测文件是否存在,还可以准确的确定地待检测晚间文件是否传输结束。

  进一步的,所述判断所述第一散列值与所述第二散列值是否相同之后,所述方法还包括:

  若所述第一散列值与所述第二散列值不相同,第三时间之后再次通过所述第一散列算法计算所述待检测文件的第三散列值;

  判断所述第三散列值与所述第一散列值是否相同;

  若所述第三散列值与所述第一散列值不相同,计算所述待检测文件的大小;

  若所述待检测文件的大小小于第一值或者所述待检测文件的大小大于第二值,发送文件错误提醒。

  由于当统一名称的文件实质内容一直不一致时,可能存在文件错误的问题,本实施例中,通过计算待检测文件的大小确定是否存在文件错误,并发送文件错误提醒。

  例如,若待检测文件的大小小于第一值,确定文件损坏,发送文件错误提醒;或者,若待检测文件的大小大于第二值,确定文件传输错误,发送文件错误提醒。

  S16,若所述第一散列值与所述第二散列值相同,校验所述待检测文件是否准确。

  在本实施例一可选实施例中,校验所述待检测文件是否准确,包括:

  判断所述待检测文件的格式是否为预设格式,若是,确定所述待检测文件准确,若否,确定所述待检测文件不准确。

  在本发明另一可选实施例中,校验所述待检测文件是否准确,包括:

  获取所述待检测文件的文件内容;判断所述文件的目标字段的数据是否为空,或者判断所述文件的目标字段的数据是否为非法数据;若是,确定所述待检测文件不准确,若否,确定所述待检测文件准确。

  S17,若确定所述待检测文件准确,确定完成接收所述待检测文件,更新文件检测状态表,所述文件检测状态表包括所述待检测文件的存在状态和所述待检测文件的接收时间。

  本实施例中,所述待检测文件检测状态表用于记录待检测文件是否存在。例如,通过0和1标识待检测文件是否存在,状态值的初始值为0,即当检测到待检测文件存在时,更新状态值为1,当没有检测到待检测文件时,保持状态值为0。

  在本实施例中,所述文件状态表还可以包括待检测文件的接收时间。

  进一步的,在本发明一可选实施例中,将文件件状态表保存在区块链中,从而防止待检测文件的信息被篡改。

  进一步的,在本发明另一实施例中,所述校验所述待检测文件是否准确之后,所述方法还包括:

  若确定所述待检测文件准确,对所述待检测文件进行分片,得到第一文件数据集合,所述第一文件数据集合包括若干片文件数据;

  通过哈希算法计算每片文件数据的哈希值,将所得到的哈希值进行汇集,得到第一特征哈希结果;

  第二时间之后,再次对所述待检测文件进行分片,得到第二文件数据集合,通过所述哈希算法计算每片文件数据的哈希值,将所得到的哈希值进行汇集,得到第二特征哈希结果;

  通过相似性算法计算所述第一特征哈希结果与所述第一特征哈希结果的相似度;

  若所述相似度大于预设相似度,确定所述待检测文件未更新;

  若所述相似度小于预设相似度,确定所述待检测文件已更新,发送文件更新消息。

  本实施例中,可以根据待检测文件的特征对待检测文件进行分片,其中,待检测文件的特征包括待检测文件的长度和/或内容类型。

  通过本实施例,可以判断待检测文件是否发生变化,并且判断的准确性更高。

  本实施例所提供的交互文件检测方法,基于Quartz编码设置任务,在所述任务指示的第一预设时间达到时查询场外交易系统的第一接口,获取待检测任务;根据所述待检测任务确定待检测文件;调用所述场外交易系统的第二接口访问指定目录,检测所述指定目录中是否存在所述待检测文件;若检测到存在所述待检测文件,通过第一散列算法计算所述待检测文件的第一散列值,以及在第一时间之后通过所述第一散列算法计算所述待检测文件的第二散列值;判断所述第一散列值与所述第二散列值是否相同;若所述第一散列值与所述第二散列值相同,校验所述待检测文件是否准确;若确定所述待检测文件准确,更新文件检测状态表,所述文件检测状态表包括所述待检测文件的存在状态和所述待检测文件的接收时间。从而能够及时地进行文件检测,以及对文件是否正确进行检测,实现了提高检测场外交易系统的交互文件的时效性,减少系统资源的消耗的目的,进一步的,通过对文件的准确性进行校验,避免了因文件异常导致的数据缺失、数据不一致等问题,减少系统故障率。

  如图3所示,图3为本发明实施例提供一种交互文件检测装置的功能模块图。交互文件检测装置20包括查询模块210、确定模块220、检测模块230、计算模块240、判断模块250、校验模块260和更新模块270。本发明所称的模块是指一种能够被终端的处理器所执行并且能够完成固定功能的一系列计算机程序段,其存储在终端的存储器中,所述终端可以是电脑、服务器、手机等电子设备。在本实施例中,关于各模块的功能将在后续的实施例中详述。

  查询模块210,用于基于Quartz编码设置任务,在所述任务指示的第一预设时间达到时查询场外交易系统的第一接口,获取待检测任务。

  本实例中,场外交易系统可以是基于金证的KCBP框架所构建的。

  所述待检测任务包括待检测的与交互方进行交互的文件,具体的,文件的数量可以为一个或多个。

  所述Quartz可以进行任务调度。具体的,Quartz包括任务调度器(Scheduler)、触发器(Trigger)、详细任务(JobDetail&Job)。

  确定模块220,用于根据所述待检测任务确定待检测文件。

  具体的,所述根据所述待检测任务确定待检测文件包括:解析所述待检测任务,获取所述待检测任务包含的待检测文件。

  检测模块230,用于调用所述场外交易系统的第二接口访问指定目录,检测所述指定目录中是否存在所述待检测文件。

  本实施例中,通过调用第二接口访问指定目录所检测的待检测文件与通过第一接口获取待检测任务进而确定的待检测文件为同一文件。

  例如,查询场外交易系统的第一接口,获场外交易系统返回的任务数据,通过解析该任务数据确定待检测文件为A文件,进而调用场外交易系统的第二接口访问指定目录,检测是否存在A文件。

  在一可选实施例中,所述待检测文件可为非对称加密算法加密的文件。

  请参见图2,图2是本发明实施例中一种与场外交易系统进行交互的示意图。

  在图2中,OTC清算系统为场外交易系统的一部分,即OTC清算系统为场外交易系统的子系统。在图2中,通过OTCPLUS调用OTC清算系统的第二接口,访问指定目录,在该指定目录中查找待检测文件。

  进一步,在访问指定目录之前,基于Kerberos认证协议与场外交易系统进行安全认证,包括:

  向Kerberos服务的密钥分发中心申请第一请求,用建立与密钥分发中心的安全会话;

  在密钥分发中心接收到申请的第一请求之后,解析第一请求中的参数,生成标识数据,并以请求指定的用户名的秘钥进行加密返回响应请求,该响应请求中包含生成的标识数据。

  在接收到密钥分发中心返回的响应请求之后,解析获取标识数据,以及基于标识数据向密钥分发中心发送消息以获取场外交易系统的服务标识。

  当密钥分发中心接受到该消息,并校验服务标志通过之后,生成并返回场外交易系统的交易标识。

  当接收到返回的交易标识之后,将交易标识传输至场外交易系统,在接受到场外交易系统返回的认证结果之后,确定与场外交易系统建立连接。

  可选的,所述装置还包括提醒模块,所述提醒模块用于:若所述指定目录中不存在所述待检测文件,调用消息通知系统的接口发送文件超时效提醒消息。

  在本实施例中,调用消息通知系统的接口时可以通过邮件或者短信的形式发送文件超时效提醒消息。

  通过调用消息通知系统的接口发送文件超时效提醒消息,能够及时的传递文件不存在的消息,进而有利于及时获取数据,避免到清算使用数据时查询不到文件。

  计算模块240,用于当检测到存在所述待检测文件时,通过第一散列算法计算所述待检测文件的第一散列值,以及在第一时间之后通过所述第一散列算法计算所述待检测文件的第二散列值。

  本实施例中,通过第一散列算法计算所述待检测文件的第一散列值包括:通过第一散列算法将待检测文件的信息摘要变换成固定长度的输出,该输出为第一散列值。

  本实施例中,在第一时间时候,获取与前一次获取的文件名称相同的待检测文件,通过在不同时间计算同一名称的文件的散列值,以确定文件内容是否相同。

  在本发明其他可选实施例中,可以每间隔一段时间计算一次文件的散列值。

  本实施例中,所述第一时间可为预先设定的。进一步的,所述方法还包括通过待检测文件的预测大小确定所述第一时间。

  例如,若检测到存在A基金公司的02文件,则通过第一散列算法计算该02文件的第一散列值,间隔10分钟之后,再次通过同样的散列算法计算待检测文件的第二散列值。

  进一步的,所述计算模块具体用于:

  获取所述待检测文件的第一尾部数据;

  通过第二散列算法和所述第一尾部数据,计算所述待检测文件的第一散列值;

  在第一时间之后获取所述待检测文件的第二尾部数据,所述第二尾部数据的字节数和所述第一尾部数据的字节数相同;

  通过所述第二散列算法和所述第二尾部数据,计算所述待检测文件的第二散列值。

  在本实施中,获取所述待检测文件的第一尾部数据包括:通过设置偏移量从文件的指定位置(如结尾)读取文件内容,得到第一尾部数据。

  类似的,在第一时间之后通过设置偏移量从文件的指定位置(如结尾)读取文件内容,得到第二尾部数据。

  在本实施例中,通过获取相同字节数的文件内容,从而可以快速的得到第一散列值和第二散列值,进而匹配第一散列值和第二散列值的大小,有利于提高比较的速度。

  判断模块250,用于判断所述第一散列值与所述第二散列值是否相同。

  本实施例中,当第一散列值与第二散列值相同时,确定待检测文件存在且传输完毕;当第一散列值与第二散列值不相同时,确定待检测文件未传输完毕。

  本实施例通过多次计算待检测文件的散列值,不仅可以确定待检测文件是否存在,还可以准确的确定地待检测晚间文件是否传输结束。

  进一步的,所述提醒模块还用于:

  判断所述第一散列值与所述第二散列值是否相同之后,若所述第一散列值与所述第二散列值不相同,第三时间之后再次通过所述第一散列算法计算所述待检测文件的第三散列值;

  判断所述第三散列值与所述第一散列值是否相同;

  若所述第三散列值与所述第一散列值不相同,计算所述待检测文件的大小;

  若所述待检测文件的大小小于第一值或者所述待检测文件的大小大于第二值,发送文件错误提醒。

  由于当统一名称的文件实质内容一直不一致时,可能存在文件错误的问题,本实施例中,通过计算待检测文件的大小确定是否存在文件错误,并发送文件错误提醒。

  例如,若待检测文件的大小小于第一值,确定文件损坏,发送文件错误提醒;或者,若待检测文件的大小大于第二值,确定文件传输错误,发送文件错误提醒。

  校验模块260,用于若所述第一散列值与所述第二散列值相同,校验所述待检测文件是否准确。

  在本实施例一可选实施例中,校验所述待检测文件是否准确,包括:

  判断所述待检测文件的格式是否为预设格式,若是,确定所述待检测文件准确,若否,确定所述待检测文件不准确。

  在本发明另一可选实施例中,校验所述待检测文件是否准确,包括:

  获取所述待检测文件的文件内容;判断所述文件的目标字段的数据是否为空,或者判断所述文件的目标字段的数据是否为非法数据;若是,确定所述待检测文件不准确,若否,确定所述待检测文件准确。

  更新模块270,用于若确定所述待检测文件准确,确定完成接收所述待检测文件,更新文件检测状态表,所述文件检测状态表包括所述待检测文件的存在状态和所述待检测文件的接收时间。

  本实施例中,所述待检测文件检测状态表用于记录待检测文件是否存在。例如,通过0和1标识待检测文件是否存在,状态值的初始值为0,即当检测到待检测文件存在时,更新状态值为1,当没有检测到待检测文件时,保持状态值为0。

  在本实施例中,所述文件状态表还可以包括待检测文件的接收时间。

  进一步的,在本发明一可选实施例中,将文件件状态表保存在区块链中,从而防止待检测文件的信息被篡改。

  进一步的,在本发明另一实施例中,所述装置还包括更新检测模块,所述更新检测模块用于:

  若确定所述待检测文件准确,对所述待检测文件进行分片,得到第一文件数据集合,所述第一文件数据集合包括若干片文件数据;

  通过哈希算法计算每片文件数据的哈希值,将所得到的哈希值进行汇集,得到第一特征哈希结果;

  第二时间之后,再次对所述待检测文件进行分片,得到第二文件数据集合,通过所述哈希算法计算每片文件数据的哈希值,将所得到的哈希值进行汇集,得到第二特征哈希结果;

  通过相似性算法计算所述第一特征哈希结果与所述第一特征哈希结果的相似度;

  若所述相似度大于预设相似度,确定所述待检测文件未更新;

  若所述相似度小于预设相似度,确定所述待检测文件已更新,发送文件更新消息。

  本实施例中,可以根据待检测文件的特征对待检测文件进行分片,其中,待检测文件的特征包括待检测文件的长度和/或内容类型。

  通过本实施例,可以判断待检测文件是否发生变化,并且判断的准确性更高。

  本发明提供的所述交互文件检测装置中,查询模块基于Quartz编码设置任务,在所述任务指示的第一预设时间达到时查询场外交易系统的第一接口,获取待检测任务;确定模块根据所述待检测任务确定待检测文件;检测模块调用所述场外交易系统的第二接口访问指定目录,检测所述指定目录中是否存在所述待检测文件;若检测到存在所述待检测文件,计算模块通过第一散列算法计算所述待检测文件的第一散列值,以及在第一时间之后通过所述第一散列算法计算所述待检测文件的第二散列值;判断模块判断所述第一散列值与所述第二散列值是否相同;若所述第一散列值与所述第二散列值相同,校验模块校验所述待检测文件是否准确;若确定所述待检测文件准确,更新模块确定完成接收所述待检测文件,更新文件检测状态表,所述文件检测状态表包括所述待检测文件的存在状态和所述待检测文件的接收时间。从而能够及时地进行文件检测,以及对文件是否正确进行检测,实现了提高检测场外交易系统的交互文件的时效性,减少系统资源的消耗的目的,进一步的,通过对文件的准确性进行校验,避免了因文件异常导致的数据缺失、数据不一致等问题,减少系统故障率。

  上述以软件功能模块的形式实现的集成的单元,可以存储在一个计算机可读取计算机可读存储介质中。上述软件功能模块存储在一个计算机可读存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。

  如图4所示,是本发明实现交互文件检测方法的较佳实施例的终端3的结构示意图。在本实施例中,终端3包括至少一个发送装置31、至少一个存储器32、至少一个处理器33、至少一个接收装置34以及至少一个通信总线。其中,所述通信总线用于实现这些组件之间的连接通信。

  所述终端3是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。所述终端3还可包括网络设备和/或用户设备。其中,所述网络设备包括但不限于单个网络服务器、多个网络服务器组成的服务器组或基于云计算(Cloud Computing)的由大量主机或网络服务器构成的云,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。

  所述终端3可以是,但不限于任何一种可与用户通过键盘、触摸板或声控设备等方式进行人机交互的电子产品,例如,平板电脑、智能手机、监控设备等终端。

  所述终端3所处的网络包括,但不限于互联网、广域网、城域网、局域网、虚拟专用网络(Virtual Private Network,VPN)等。

  其中,所述接收装置34和所述发送装置31可以是有线发送端口,也可以为无线设备,例如包括天线装置,用于与其他设备进行数据通信。

  所述存储器32用于存储程序代码。所述存储器32可以是集成电路中没有实物形式的具有存储功能的电路,如RAM(Random-Access Memory,随机存取存储器)、FIFO(First InFirst Out,先进先出存储器)等。或者,所述存储器32也可以是具有实物形式的存储器,如内存条、TF卡(Trans-flash Card)、智能媒体卡(smart media card)、安全数字卡(securedigital card)、快闪存储器卡(flash card)等储存设备等等。

  所述处理器33可以包括一个或者多个微处理器、数字处理器。所述处理器33可调用存储器32中存储的程序代码以执行相关的功能。例如,图3中所述的各个模块是存储在所述存储器32中的程序代码,并由所述处理器33所执行,以实现一种交互文件检测方法。所述处理器33又称中央处理器(CPU,Central Processing Unit),是一块超大规模的集成电路,是运算核心(Core)和控制核心(Control Unit)。

  在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。

  所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

  另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。

  对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第二等词语用来表示名称,而并不表示任何特定的顺序。

  最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。

《交互文件检测方法、装置、终端及存储介质.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)