CN113779439B - 一种远程文件识别方法、装置、服务器及可读存储介质 - Google Patents

一种远程文件识别方法、装置、服务器及可读存储介质 Download PDF

Info

Publication number
CN113779439B
CN113779439B CN202111004658.6A CN202111004658A CN113779439B CN 113779439 B CN113779439 B CN 113779439B CN 202111004658 A CN202111004658 A CN 202111004658A CN 113779439 B CN113779439 B CN 113779439B
Authority
CN
China
Prior art keywords
file
url
identification
identifier
intranet
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
Application number
CN202111004658.6A
Other languages
English (en)
Other versions
CN113779439A (zh
Inventor
谢正强
朱文杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BEIJING NETEAST TECHNOLOGIES CO LTD
Original Assignee
BEIJING NETEAST TECHNOLOGIES CO LTD
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by BEIJING NETEAST TECHNOLOGIES CO LTD filed Critical BEIJING NETEAST TECHNOLOGIES CO LTD
Priority to CN202111004658.6A priority Critical patent/CN113779439B/zh
Publication of CN113779439A publication Critical patent/CN113779439A/zh
Application granted granted Critical
Publication of CN113779439B publication Critical patent/CN113779439B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9566URL specific, e.g. using aliases, detecting broken or misspelled links
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/14Details of searching files based on file metadata
    • G06F16/148File search processing
    • G06F16/152File search processing using file content signatures, e.g. hash values
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/172Caching, prefetching or hoarding of files
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

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)
  • Library & Information Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请涉及互联网技术领域的领域,尤其是涉及一种远程文件识别方法、装置、服务器及可读存储介质,其包括获取本运营商用户建立的外网回源任务中的URL;确定解除模块URL对应的文件的第一标识,对于每个文件,文件的第一标识是基于该文件的长度信息和预设位置的内容信息得到的;判断内网缓存服务器中是否存在第一标识与解除模块URL对应的文件的第一标识相同的文件;若存在,则确定解除模块内网中第一标识与解除模块URL对应的文件的第一标识相同的文件为等效文件;将内网缓存服务器中解除模块等效文件返回至用户;将解除模块URL与解除模块等效文件的第一标识关联。本申请能够降低运营商的流量成本。

Description

一种远程文件识别方法、装置、服务器及可读存储介质
技术领域
本申请涉及互联网技术领域的领域,尤其是涉及一种远程文件识别方法、装置、服务器及可读存储介质。
背景技术
互联网上存在很多文件,被放在不同运营商的网站内,对于运营商来说,其他运营商的网站就叫外网,而本运营商下属的网站就叫内网。由于不同运营商之间带宽出口需要支付费用,因此对于一个运营商来说,用户下载相同的文件,选择内网的成本要低于选择外网的成本。
在互联网上,有些文件的实际内容一致,但是使用了不同而且完全无联系的URI,使用常用的URL聚合技术是无法将其识别定义为相同文件的,因此只有将外网服务器的完整文件下载到本地(内网缓存服务器)后,对比文件全部内容才能识别外网服务器的文件与本地服务器的文件是否为相同文件。在下载外网服务器文件的过程中,存在外网的文件被本运营商用户多次下载的情况,增加了运营商的进口其他运营商带宽的成本。
发明内容
为了降低运营商的流量成本,本申请提供一种远程文件识别方法、装置、服务器及可读存储介质。
第一方面,本申请提供一种远程文件识别方法,采用如下的技术方案:
一种远程文件识别方法,包括:
获取本运营商用户建立的外网回源任务中的URL;
确定所述URL对应的文件的第一标识,对于任一文件,文件的第一标识是基于该文件的长度信息和预设位置的内容信息得到的;
判断内网缓存服务器中是否存在第一标识与所述URL对应的文件的第一标识相同的文件;
若存在,则确定所述内网中第一标识与所述URL对应的文件的第一标识相同的文件为等效文件;
将内网缓存服务器中所述等效文件返回至用户;
将URL对应的唯一标识与所述等效文件的第一标识关联。
通过采用上述技术方案,内网的缓存服务器收到URL请求后,从外网服务器上下载URL对应的文件的预设位置的数据,然后计算得到该文件的第一标识,如果内网缓存服务器中有文件的第一标识与URL对应的文件的第一标识相同,则从本地缓存服务器为用户提供文件下载,这个过程中只消耗了在外网服务器上下载URL对应的文件的预设位置的数据的流量,相比在外网服务其上直接下载该URL对应的完整文件,减少了流量消耗,降低了运营商的流量成本;同时建立该URL与内网缓存服务器中等效文件的对应关联关系,以便于后续本运营商的用户建立基于该URL的回源任务时,也能够在本地的缓存服务器上下载该等效文件,进一步降低了运营商的流量成本。
在一种可能实现的方式中,所述确定所述URL对应的唯一标识的方法,包括:
基于预设规则获取所述URL的关键字;
基于所述URL的关键字进行SHA-1算法,确定所述URL的唯一标识。
在一种可能实现的方式中,在判断内网缓存服务器中是否存在第一标识与所述URL对应的文件的第一标识相同的文件,之前还包括:
确定所述URL的唯一标识;
判断内网缓存服务器中是否存在第一标识与所述URL的唯一标识相对应的文件;
若存在,则确定所述内网缓存服务器中第一标识与所述URL的唯一标识相对应的文件为预备文件;
将内网缓存服务器中所述预备文件返回至用户;
将所述URL与所述预备文件的第一标识关联;
若不存在,则判断内网缓存服务器中是否有文件的第一标识与所述URL对应的文件的第一标识相同。
通过采用上述技术方案,若内网缓存服务器中存在预备文件,此时将预备文件直接返回至用户,则能够减少运营商进口流量的消耗,降低了运营商的流量成本,同时也减了获取所述URL对应的文件长度信息和预设位置的内容信息需要消耗的进口流量。
在一种可能实现的方式中,若内网缓存服务器中不存在第一标识与所述URL对应的文件的第一标识相同的文件,则:
下载所述URL对应的文件至内网缓存服务器;
将所述URL与所述URL对应的文件的第一标识进行关联。
通过采用上述技术方案,当内网缓存服务器中不存在第一标识与所述URL对应的文件的第一标识相同的文件时,说明内网缓存服务器中不存在与所述URL对应的文件相同的文件,因此此时直接将所述UR对应的文件下载到内网缓存服务器中,并且将所述URL与所述所述URL对应的文件的第一标识进行关联,则之后如果有本运营商的用户建立基于所述URL的回源任务时,能够将内网缓存服务器中已经存在的所述URL对应的文件返回给用户,进而节省了之后运营商的进口流量,降低了运营商的流量成本。
在一种可能实现的方式中,所述确定所述URL对应的文件的第一标识,包括:
确定所述URL的类型;
判断所述URL的类型是否符合预设规则;
若符合,基于所述URL对应的文件的长度信息和预设位置的内容信息,获取所述URL对应的文件的第一标识;
若不符合,则将所述URL的唯一标识作为所述URL对应的文件的第一标识。
通过采用上述技术方案,对不同网站,不同后缀存在不同的文件获取规则,且不同的后缀拥有不同的特性;因此对于符合预设规则的所述URL对应的文件,则确定其第一标识,若不符合则将所述URL的唯一标识作为所述URL对应的文件的第一标识,进而能够降低本方案方法对应的程序在运行时发生故障的几率。
在一种可能实现的方式中,所述确定所述URL的类型,包括:
基于所述URL获取所述URL对应的文件的域名和后缀名;
基于所述URL对应的文件的域名和后缀名中的至少一项确定所述URL的类型。
通过采用上述技术方案,因为不同域名的同一后缀名的文件的编码或者行为是不一样的,因此要基于在判断文件的类型时还要基于文件的域名来判断,能够提升判断的准确率。
在一种可能实现的方式中,获取请求第一标识与所述URL关联的文件的客户端的IP,以及每个IP请求的次数;
判断是否有至少一个IP在预设时间内请求第一标识与所述URL关联的文件达到预设次数;
若是,则标记第一标识与所述URL关联的文件为异常文件;
下载所述URL对应的文件;
判断所述URL对应的文件与第一标识与所述URL关联的文件是否为相同文件;
若是,则发出第一告警信息;
若不是,则发出第二告警信息;
解除所述URL与等效文件的第一标识或与所述预备文件的第一标识之间的关联。
通过采用上述技术方案,当内网缓存服务器中的某个文件在预设时间内被多个IP多次下载时,可能就是出故障了,即内网缓存服务器中的该文件与所述URL对应的文件并不是相同文件,因此此时需要将所述URL对应的文件完整下载后再与内网缓存服务器中的该文件进行比对,进而判断是否为相同文件,如果不是,则解除所述URL与改文件的第一标识之间的关联,以降低其他本运营商的其他用户再次遇到故障的几率。
在一种可能实现的方式中,所述判断所述URL对应的文件与所述第一标识与所述URL关联的文件是否为相同文件,包括:
确定所述URL对应的文件的第二标识,对于每个文件,文件的第二标识是基于该文件的全部内容得到的;
确定第一标识与所述URL关联的文件的第二标识;
判断所述URL对应的文件的第二标识与第一标识与所述URL关联的文件的第二标识是否相同。
通过采用上述技术方案,文件的第二标识是基于该文件的全部内容得到的,因此判断所述URL对应的文件的第二标识与第一标识与所述URL关联的文件的第二标识是否相同,即能够判断所述URL对应的文件与所述第一标识与所述URL关联的文件是否为相同文件。
第二方面,本申请提供一种远程文件识别装置,采用如下的技术方案:
一种远程文件识别装置,包括:
URL获取模块,用于获取本运营商用户建立的外网回源任务中的URL;
第一标识确定模块,用于确定所述URL对应的文件的第一标识,对于每个文件,文件的第一标识是基于该文件的长度信息和预设位置的内容信息得到的;
第一判断模块,用于判断内网缓存服务器中是否存在第一标识与所述URL对应的文件的第一标识相同的文件。
当内网缓存服务器中存在第一标识与所述URL对应的文件的第一标识相同的文件时:
等效文件确定模块,用于确定所述内网中第一标识与所述URL对应的文件的第一标识相同的文件为等效文件;
等效文件返回模块,用于将内网缓存服务器中所述等效文件返回至用户;
第一关联模块,用于将所述URL与所述等效文件的第一标识关联。
在一种可能实现的方式中,还包括:
关键字获取模块,用于基于预设规则获取所述URL的关键字;
唯一标识确定模块,用于基于所述URL的关键字进行SHA-1算法,确定所述URL的唯一标识。
在一种可能实现的方式中,还包括:
通过唯一标识确定模块确定所述URL的唯一标识;
第二判断模块,用于判断内网缓存服务器中是否存在第一标识与所述URL的唯一标识相对应的文件。
当内网缓存服务器中存在第一标识与所述URL的唯一标识相对应的文件时:
预备文件确定模块,用于确定所述内网缓存服务器中第一标识与所述URL的唯一标识相对应的文件为预备文件;
预备文件返回模块,用于将内网缓存服务器中所述预备文件返回至用户;
第二关联模块,用于将所述URL与所述预备文件的第一标识关联。
当内网缓存服务器中不存在第一标识与所述URL的唯一标识相对应的文件时,第一判断模块判断内网缓存服务器中是否有文件的第一标识与所述URL对应的文件的第一标识相同。
在一种可能实现的方式中,还包括,当内网缓存服务器中不存在第一标识与所述URL对应的文件的第一标识相同的文件时:
下载模块,用于下载所述URL对应的文件至内网缓存服务器;
第二关联模块,用于将所述URL与所述URL对应的文件的第一标识进行关联。
在一种可能实现的方式中,当第一标识确定模块用于确定所述URL对应的文件的第一标识时,具体用于:
确定所述URL的类型;
判断所述URL的类型是否符合预设规则;
若符合,基于所述URL对应的文件的长度信息和预设位置的内容信息,获取所述URL对应的文件的第一标识;
若不符合,则将所述URL的唯一标识作为所述URL对应的文件的第一标识。
在一种可能实现的方式中,当第一标识确定模块用于确定所述URL的类型时,具体用于:
基于所述URL获取所述URL对应的文件的域名和后缀名;
基于所述URL对应的文件的域名和后缀名中的至少一项确定所述URL的类型。
在一种可能实现的方式中,还包括:
第一获取模块,用于获取请求第一标识与所述URL关联的文件的客户端的IP,以及每个IP请求的次数;
第三判断模块,判断是否有至少一个IP在预设时间内请求第一标识与所述URL关联的文件达到预设次数;
若是,则异常文件标记模块,用于标记第一标识与所述URL关联的文件为异常文件;
下载模块,用于下载所述URL对应的文件;
第四判断模块,用于判断所述URL对应的文件与第一标识与所述URL关联的文件是否为相同文件;
若是,则第一告警模块,用于发出第一告警信息;
若不是,则第二告警模块,用于发出第二告警信息;
解除模块,用于解除所述URL与等效文件的第一标识或与所述预备文件的第一标识之间的关联。
在一种可能实现的方式中,当所述第四判断模块用于判断所述URL对应的文件与所述第一标识与所述URL关联的文件是否为相同文件时,具体用于:
确定所述URL对应的文件的第二标识,对于每个文件,文件的第二标识是基于该文件的全部内容得到的;
确定第一标识与所述URL关联的文件的第二标识;
判断所述URL对应的文件的第二标识与第一标识与所述URL关联的文件的第二标识是否相同。
第三方面,本申请提供一种服务器,采用如下的技术方案:
一种服务器,该服务器包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中一个或多个应用程序被存储在存储器中并被配置为由一个或多个处理器执行,一个或多个程序配置用于:执行上述远程文件识别的方法。
第四方面,本申请提供一种计算机可读存储介质,采用如下的技术方案:
一种计算机可读存储介质,包括:存储有能够被处理器加载并执行上述远程文件识别方法的计算机程序。
综上所述,本申请包括以下至少一种有益技术效果:
1.内网的缓存服务器收到URL请求后,从外网服务器上下载URL对应的文件的预设位置的数据,然后计算得到该文件的第一标识,如果内网缓存服务器中有文件的第一标识与URL对应的文件的第一标识相同,则从本地缓存服务器为用户提供文件下载,这个过程中只消耗了在外网服务器上下载URL对应的文件的预设位置的数据的流量,相比在外网服务其上直接下载该URL对应的完整文件,减少了流量消耗,降低了运营商的流量成本;同时建立该URL与内网缓存服务器中等效文件的对应关联关系,以便于后续本运营商的用户建立基于该URL的回源任务时,也能够在本地的缓存服务器上下载该等效文件,进一步降低了运营商的流量成本;
2.若内网缓存服务器中存在预备文件,此时将预备文件直接返回至用户,则能够减少运营商进口流量的消耗,降低了运营商的流量成本,同时也减了获取所述URL对应的文件长度信息和预设位置的内容信息需要消耗的进口流量;
3.当内网缓存服务器中不存在第一标识与所述URL对应的文件的第一标识相同的文件时,说明内网缓存服务器中不存在与所述URL对应的文件相同的文件,因此此时直接将所述UR对应的文件下载到内网缓存服务器中,并且将所述URL与所述所述URL对应的文件的第一标识进行关联,则之后如果有本运营商的用户建立基于所述URL的回源任务时,能够将内网缓存服务器中已经存在的所述URL对应的文件返回给用户,进而节省了之后运营商的进口流量,降低了运营商的流量成本。
附图说明
图1是本申请实施例中远程文件识别方法的流程示意图;
图2是本申请实施例中远程文件识别装置的结构示意图;
图3是本申请实施例服务器的结构示意图。
具体实施方式
以下结合附图1-附图3对本申请作进一步详细说明。
领域技术人员在阅读完本说明书后可以根据需要对本实施例做出没有创造性贡献的修改,但只要在本申请的权利要求范围内都受到专利法的保护。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,如无特殊说明,一般表示前后关联对象是一种“或”的关系。
在写本申请的实施例之前,先对下述实施例中用到的名词做出解释,以便于更清晰理解本申请方案:
HTTP超文本传输协议,是一种用于分布式、协作式和超媒体信息系统的应用层协议。
Range,是在 HTTP/1.1里新增的一个 header field,也是多线程下载工具实现多线程下载的核心。
SHA-1(Secure Hash Algorithm 1,安全散列算法1)是一种密码散列函数,SHA-1可以生成一个被称为消息摘要的160位(20字节)散列值,散列值通常的呈现形式为40个十六进制数。
URL(Uniform Resource Locator,统一资源定位器),每一信息资源(文件)都有统一的且在网上唯一的地址,该地址就叫URL,它是WWW的统一资源定位标志,就是指网络地址。
URLhash,对URL聚合后的关键字进行SHA-1算法,形成40位字符串作为该URL的唯一标识。
Contenthash,对文件的预设部分的内容做SHA-1算法,计算出的文件的唯一标识。
Filehash,对文件的全部内容做SHA-1算法计算出的文件唯一标识。
本申请实施例提供了一种远程文件识别方法,由缓存服务器执行,参照图1,该方法包括步骤S101、步骤S102、步骤S103、步骤S104、步骤S105以及步骤S106,其中:
S101、获取本运营商用户建立的外网回源任务中的URL。
对于本申请实施例而言,回源任务应该是本地运营商的用户建立的,且该回源任务中的URL所对应的文件应位于外网中。
S102、确定URL对应的文件的第一标识,对于任一文件,文件的第一标识是基于该文件的长度信息和预设位置的内容信息得到的。
具体地,第一标识即为Contenthash,通过确定URL对应的文件的长度信息,能够确定该文件预设位置的内容信息,进而进行SHA-1运算,得到URL对应的文件的第一标识。
S103、判断内网缓存服务器中是否存在第一标识与URL对应的文件的第一标识相同的文件。
具体地,应对内网缓存服务器中的每个文件进行运算,进而得到每个文件分别对应的Contenthash,将内网中的各个文件以及与各个文件分别对应的Contenthash集合成映射表,用于检索内网缓存服务器中是否有文件的Contenthash与URL对应的文件的Contenthash相同,如果有,则说明该URL对应的文件在本运营上的内网缓存服务器中也存在;如果没有,则说明该URL对应的文件在本运营上的内网缓存服务器中不存在。
S104、若存在,则确定内网中第一标识与URL对应的文件的第一标识相同的文件为等效文件。
具体地,当内网缓存服务器中存在第一标识与URL对应的文件的第一标识相同的文件时,则可暂时将该文件确定为与URL对应的文件为相同的文件,即等效文件。
S105、将内网缓存服务器中等效文件返回至用户。
具体地,将等效文件返回至用户,则回源任务完成;由于用户建立的回源任务中的URL对应的文件位于外网,但是在本运营商的内网中寻找到与URL对应的文件相同的等效文件,因此将等效文件返回至用户,则节省了下载外网中URL对应的文件的进口流量。
S106、将URL与等效文件的第一标识关联。
具体地,将该URL与内网中的文件的Contenthash进行关联后,则当运营商的用户再次建立包含该URL的回源任务时,则将内网中与该URL关联的等效文件返回至用户,则能够进一步节省运营商的进口流量。
进一步地,当内网缓存服务器中不存在第一标识与URL对应的文件的第一标识相同的文件时,还包括步骤S107(图中未示出)和步骤S108(图中未示出),其中:
步骤S107、下载URL对应的文件至内网缓存服务器。
具体地,将URL对应的文件至内网缓存服务器,则再次之后内网缓存服务器中也存在该URL对应的文件了,同时也存在该URL对应的文件的Contenthash。
步骤S108、将URL与URL对应的文件的第一标识进行关联。
具体地,是将URL与URL对应的文件的Contenthash进行关联,在此之后,运营商的用户建立基于该URL的回源任务时,也能够在本地的缓存服务器上下载该文件。
在本申请实施例中,内网的缓存服务器收到URL请求后,从外网服务器上下载URL对应的文件的预设位置的数据,然后计算得到该文件的第一标识,如果内网缓存服务器中有文件的第一标识与URL对应的文件的第一标识相同,则从本地缓存服务器为用户提供文件下载,这个过程中只消耗了在外网服务器上下载URL对应的文件的预设位置的数据的流量,相比在外网服务其上直接下载该URL对应的完整文件,减少了流量消耗,降低了运营商的流量成本;同时建立该URL与内网缓存服务器中等效文件的对应关联关系,以便于后续本运营商的用户建立基于该URL的回源任务时,也能够在本地的缓存服务器上下载该等效文件,进一步降低了运营商的流量成本。
进一步地,在步骤S103之前,还包括,步骤A(图中未示出)、步骤B(图中未示出)、步骤C(图中未示出)、步骤D(图中未示出)以及步骤E(图中未示出),其中:
步骤A、确定URL的唯一标识。
具体地,URL的唯一标识即为URLhash。
步骤B、判断内网缓存服务器中是否存在第一标识与URL的唯一标识相对应的文件。
具体地,是判断内网缓存服务器中是否存在与该URLhash相对应的Contenthash。
步骤C、若存在,则确定内网缓存服务器中第一标识与URL的唯一标识相对应的文件为预备文件。
具体地,当内网缓存服务器中存在与该URLhash相对应的Contenthash时,则说明,内网中存在与URL对应的文件相同的文件,即内网中的Contenthash对应的文件,则将此文件确定为预备文件。
步骤D、将内网缓存服务器中预备文件返回至用户。
具体地,将预备文件件返回至用户,则回源任务完成。
步骤E、将URL与预备文件的第一标识关联;
具体地,由于步骤A-步骤D是在步骤S103之前进行地,因此,若是在步骤A-步骤D的过程中发现内网缓存服务器中存在预备文件,则减少了步骤S103-步骤S106的操作,节约了用户获取到文件的时间,同时也能够节约下载外网中URL对应的文件的部分内容的进口流量,进一步节约了运营商的流量成本。
当内网缓存服务器中不存在与该URLhash相对应的Contenthash时,执行步骤S103。
进一步地,确定URL对应的唯一标识的方法,包括:步骤A1(图中未示出)和步骤A2(图中未示出),其中
步骤A1、基于预设规则获取URL的关键字。
具体地,对同内容的文件,但是URL略有不同,且已知URL的指定规则,可以通过正则等方法找到特殊字段,作为该URL的关键字,计算URL的唯一标识。如www.a.com/ASDFG.mp4和www.b.com/20180911/ASDFG.mp4 都是已经知晓的规则,代表相同内容的文件,文件唯一标识为ASDFG.mp4如果该URL没有已知规则,那么根据应用不同取URL预设内容作为关键字,在本申请实施例中,对于预设内容不作任何限定。
步骤A2、基于URL的关键字进行SHA-1算法,确定URL的唯一标识。
具体地,对步骤A1中获得的UR懒得关键字进行SHA-1运算,即可得到URLhash,即URL的唯一标识。
进一步地,步骤S102还包括步骤S1021(图中未示出)、步骤S1022(图中未示出)、步骤S1023(图中未示出)以及步骤S1024(图中未示出)。
步骤S1021、确定URL的类型。
进一步地,确定URL的类型,包括步骤Ⅰ(图中未示出)和步骤Ⅱ(图中未示出),其中:
步骤Ⅰ、基于URL获取URL对应的文件的域名和后缀名。
步骤Ⅱ、基于URL对应的文件的域名和后缀名中的至少一项确定URL的类型。
具体地,基于URL对应的文件的域名和后缀名,通过正则规则确定URL的类型。
步骤S1022、判断URL的类型是否符合预设规则。
具体地,对不同网站,不同后缀存在不同的文件获取规则,因为不同的后缀拥有不同的特性。比如flv文件基本前1024和文件长度就可以标记文件唯一标识,但是mp4前1024字节不够,需要取文件中间,文件长度才能确定。再比如,对于ZIP文件还需要取包括结尾的字段,app文件因为不同的商店会在文件不定位置中打logo,所以位置也不统一。因此要判断URL的类型是否符合预设规则,对于预设规则的具体要求,本申请实施例中不作任何限定,只要能够满足帮助确定URL对应的文件的Contenthash即可。
若URL的类型否符合预设规则,则执行步骤步骤S1023。
步骤S1023、基于URL对应的文件的长度信息和预设位置的内容信息,获取URL对应的文件的第一标识。
进一步地,在执行步骤S1023之前,使用http range请求该URL对应的文件的前指定长度数据,以获得该文件的文件总长度和前指定长度数据。
具体地,将获得的文件总长度转化为8字节的字符串,并与多个预设位置的数据拼接成一个字符串,然后对对该字符串进行SHA-1运算,得到URL对应的文件的contenthash,即为第一标识。
若URL的类型否不符合预设规则,则执行步骤步骤S1024。
步骤S1024、将URL的唯一标识作为URL对应的文件的第一标识。
具体地,在实际应用中,如果无法确定URL对应的文件的contenthash,则,本申请实施例中的方法对应的程序在运行时会出现故障,步骤S1024的方法能够降低本申请实施例的方法对应的程序在运行时发生故障的几率。
进一步地,一种远程文件识别方法,还包括:步骤S110(图中未示出)、步骤S111(图中未示出)、步骤S112(图中未示出)、步骤S113(图中未示出)、步骤S114(图中未示出)、步骤S115(图中未示出)、步骤S116(图中未示出)、步骤S117(图中未示出)以及步骤S118(图中未示出),其中:
步骤S111、获取请求第一标识与URL关联的文件的客户端的IP,以及每个IP请求的次数;
步骤S112、判断是否有至少一个IP在预设时间内请求第一标识与URL关联的文件达到预设次数。
具体地,因为contenthash是取文件的部分内容进行计算的,因此,会存在将两个不相同的文件识别成相同的文件的几率。对于用户端来说,用户端的某个应用建立回源任务,下载得到了等效文件或者预备文件,则应用对获得的文件进行校检,若等效文件和等效文件都不是URL对应的文件的相同文件,则用户端就会一直下载,校验失败,删除,下载,校验失败,删除……这样循环。
步骤S113、若是,则标记第一标识与URL关联的文件为异常文件。
具体地,只要发现内网服务其中某个文件在短时间内被至少一个IP反复获取,则能够判断该文件被识别错误了。
步骤S114、下载URL对应的文件;
步骤S115、判断URL对应的文件与第一标识与URL关联的文件是否为相同文件;
步骤S116、若是,则发出第一告警信息;
步骤S117、若不是,则发出第二告警信息;
步骤S118、解除URL与等效文件的第一标识或与预备文件的第一标识之间的关联。
具体地,此时将用户的回源任务中URL对应的文件完整下载,判断前述方法中第一标识与URL关联的文件和URL对应的文件是否为相同文件。若是相同文件,则发出第一告警信息,第一告警信息发送至后台服务器被运维人员接收,进而便于运维人员及时发现故障。
第一标识与URL关联的文件和URL对应的文件不是相同文件,则发出第二告警信息至后台服务器,便于运维人员发现故障并且能够确定故障的种类。
同时,解除URL与等效文件的第一标识或与预备文件的第一标识之间的关联,以减少故障再次发生的几率。
进一步地,步骤步骤S115具体包括,步骤S1151(图中未示出)、步骤S1152(图中未示出)以及步骤S1153(图中未示出),其中:
步骤S1151、确定URL对应的文件的第二标识,对于每个文件,文件的第二标识是基于该文件的全部内容得到的。
具体地,第二标识即为filehash,filehash是基于文件的全部内容确定的,因此相比第一标识contenthash,基于filehash判断两个文件是否为相同文件要更准确。
步骤S1152、确定第一标识与URL关联的文件的第二标识。
具体地,确定前述方法中与URL关联的contenthash对应的文件。
步骤S1153、判断URL对应的文件的第二标识与第一标识与URL关联的文件的第二标识是否相同。
具体地,对于与URL关联的contenthash对应的文件,计算其filehash为filehash1;对于URL对应的文件,计算其filehash为filehash2,将filehash1和filehash2进行对比,若filehash1和filehash2相同,则说明与URL关联的contenthash对应的文件和URL对应的文件是相同文件;若filehash1和filehash2不相同,则说明与URL关联的contenthash对应的文件和URL对应的文件不是相同文件。
进一步地,如果与URL关联的contenthash对应的文件和URL对应的文件不是相同文件,则filehash1与URL进行关联,即将第一标识与URL关联的文件的第二标识与URL进行关联,降低了URL关联的文件再次被误识别的几率。
上述实施例从方法流程的角度介绍一种远程文件识别的方法,下述实施例从虚拟模块或者虚拟单元的角度介绍了一种远程文件识别的装置,具体详见下述实施例。
本申请实施例提供一种远程文件识别的装置,如图2所示,该装置200具体可以包括:URL获取模块201、第一标识确定模块202、第一判断模块203、等效文件确定模块204、等效文件返回模块205以及第一关联模块206,其中:
URL获取模块201,用于获取本运营商用户建立的外网回源任务中的URL;
第一标识确定模块202,用于确定URL对应的文件的第一标识,对于每个文件,文件的第一标识是基于该文件的长度信息和预设位置的内容信息得到的;
第一判断模块203,用于判断内网缓存服务器中是否存在第一标识与URL对应的文件的第一标识相同的文件。
当内网缓存服务器中存在第一标识与URL对应的文件的第一标识相同的文件时:
等效文件确定模块204,用于确定内网中第一标识与URL对应的文件的第一标识相同的文件为等效文件;
等效文件返回模块205,用于将内网缓存服务器中等效文件返回至用户;
第一关联模块206,用于将URL与等效文件的第一标识关联。
在一种可能实现的方式中,还包括:
关键字获取模块,用于基于预设规则获取URL的关键字;
唯一标识确定模块,用于基于URL的关键字进行SHA-1算法,确定URL的唯一标识。
在一种可能实现的方式中,还包括:
通过唯一标识确定模块确定URL的唯一标识;
第二判断模块,用于判断内网缓存服务器中是否存在第一标识与URL的唯一标识相对应的文件。
当内网缓存服务器中存在第一标识与URL的唯一标识相对应的文件时:
预备文件确定模块,用于确定内网缓存服务器中第一标识与URL的唯一标识相对应的文件为预备文件;
预备文件返回模块,用于将内网缓存服务器中预备文件返回至用户;
第二关联模块,用于将URL与预备文件的第一标识关联。
当内网缓存服务器中不存在第一标识与URL的唯一标识相对应的文件时,第一判断模块203判断内网缓存服务器中是否有文件的第一标识与URL对应的文件的第一标识相同。
在一种可能实现的方式中,还包括,当内网缓存服务器中不存在第一标识与URL对应的文件的第一标识相同的文件时:
下载模块,用于下载URL对应的文件至内网缓存服务器;
第二关联模块,用于将URL与URL对应的文件的第一标识进行关联。
在一种可能实现的方式中,当第一标识确定模块用于确定URL对应的文件的第一标识时,具体用于:
确定URL的类型;
判断URL的类型是否符合预设规则;
若符合,基于URL对应的文件的长度信息和预设位置的内容信息,获取URL对应的文件的第一标识;
若不符合,则将URL的唯一标识作为URL对应的文件的第一标识。
在一种可能实现的方式中,当第一标识确定模块202用于确定URL的类型时,具体用于:
基于URL获取URL对应的文件的域名和后缀名;
基于URL对应的文件的域名和后缀名中的至少一项确定URL的类型。
在一种可能实现的方式中,还包括:
第一获取模块,用于获取请求第一标识与URL关联的文件的客户端的IP,以及每个IP请求的次数;
第三判断模块,判断是否有至少一个IP在预设时间内请求第一标识与URL关联的文件达到预设次数;
若是,则异常文件标记模块,用于标记第一标识与URL关联的文件为异常文件;
下载模块,用于下载URL对应的文件;
第四判断模块,用于判断URL对应的文件与第一标识与URL关联的文件是否为相同文件;
若是,第一告警模块,用于发出第一告警信息;
若不是,第二告警模块,用于发出第二告警信息;
解除模块,用于解除URL与等效文件的第一标识或与预备文件的第一标识之间的关联。
在一种可能实现的方式中,当第四判断模块用于判断URL对应的文件与第一标识与URL关联的文件是否为相同文件时,具体用于:
确定URL对应的文件的第二标识,对于每个文件,文件的第二标识是基于该文件的全部内容得到的;
确定第一标识与URL关联的文件的第二标识;
判断URL对应的文件的第二标识与第一标识与URL关联的文件的第二标识是否相同。
本申请实施例中提供了一种服务器,如图3所示,图3所示的服务器300包括:处理器301和存储器303。其中,处理器301和存储器303相连,如通过总线302相连。可选地,服务器300还可以包括收发器304。需要说明的是,实际应用中收发器304不限于一个,该服务器300的结构并不构成对本申请实施例的限定。
处理器301可以是CPU(Central Processing Unit,中央处理器),通用处理器,DSP(Digital Signal Processor,数据信号处理器),ASIC(Application SpecificIntegrated Circuit,专用集成电路),FPGA(Field Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器301也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线302可包括一通路,在上述组件之间传送信息。总线302可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(ExtendedIndustry Standard Architecture,扩展工业标准结构)总线等。总线302可以分为地址总线、数据总线、控制总线等。为便于表示,图3中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器303可以是ROM(Read Only Memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,RAM(Random Access Memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM(Electrically ErasableProgrammable Read Only Memory,电可擦可编程只读存储器)、CD-ROM(Compact DiscRead Only Memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
存储器303用于存储执行本申请方案的应用程序代码,并由处理器301来控制执行。处理器301用于执行存储器303中存储的应用程序代码,以实现前述方法实施例所示的内容。
其中,图3示出的服务器仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,当其在计算机上运行时,使得计算机可以执行前述方法实施例中相应内容。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
以上仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

Claims (5)

1.一种远程文件识别方法,其特征在于,包括:
获取本运营商用户建立的外网回源任务中的URL;
确定所述URL对应的文件的第一标识,对于任一文件,文件的第一标识是基于该文件的长度信息和预设位置的内容信息得到的,其中,使用http range请求该URL对应的文件的前指定长度数据,以获得该文件的文件总长度和前指定长度数据,将获得的文件总长度转化为8字节的字符串,并与多个预设位置的数据拼接成一个字符串,然后对对该字符串进行SHA-1运算,得到URL对应的文件的第一标识,
所述确定所述URL对应的文件的第一标识,包括:确定所述URL的类型;判断所述URL的类型是否符合预设规则;若符合,基于所述URL对应的文件的长度信息和预设位置的内容信息,获取所述URL对应的文件的第一标识;若不符合,则将所述URL的唯一标识作为所述URL对应的文件的第一标识;
判断内网缓存服务器中是否存在第一标识与所述URL对应的文件的第一标识相同的文件;
若存在,则确定所述内网中第一标识与所述URL对应的文件的第一标识相同的文件为等效文件;
将内网缓存服务器中所述等效文件返回至用户;
将所述URL与所述等效文件的第一标识关联;
其中,在判断内网缓存服务器中是否存在第一标识与所述URL对应的文件的第一标识相同的文件,之前还包括:
确定所述URL的唯一标识;
判断内网缓存服务器中是否存在第一标识与所述URL的唯一标识相对应的文件;
若存在,则确定所述内网缓存服务器中第一标识与所述URL的唯一标识相对应的文件为预备文件;
将内网缓存服务器中所述预备文件返回至用户;
将所述URL与所述预备文件的第一标识关联;
若不存在,则判断内网缓存服务器中是否有文件的第一标识与所述URL对应的文件的第一标识相同;
获取请求第一标识与所述URL关联的文件的客户端的IP,以及每个IP请求的次数;
判断是否有至少一个IP在预设时间内请求第一标识与所述URL关联的文件达到预设次数;
若是,则标记第一标识与所述URL关联的文件为异常文件;
下载所述URL对应的文件;
判断所述URL对应的文件与第一标识与所述URL关联的文件是否为相同文件;
若是,则发出第一告警信息;
若不是,则发出第二告警信息;
解除所述URL与等效文件的第一标识或与所述预备文件的第一标识之间的关联;
其中,若内网缓存服务器中不存在第一标识与所述URL对应的文件的第一标识相同的文件,则:
下载所述URL对应的文件至内网缓存服务器;
将所述URL与所述URL对应的文件的第一标识进行关联;
其中,所述确定所述URL的类型,包括:基于所述URL获取所述URL对应的文件的域名和后缀名;
基于所述URL对应的文件的域名和后缀名确定所述URL的类型。
2.根据权利要求1所述的一种远程文件识别方法,其特征在于,所述确定所述URL对应的唯一标识的方法,包括:
基于预设规则获取所述URL的关键字;
基于所述URL的关键字进行SHA-1算法,确定所述URL的唯一标识。
3.根据权利要求1所述的一种远程文件识别方法,其特征在于:所述判断所述URL对应的文件与所述第一标识与所述URL关联的文件是否为相同文件,包括:
确定所述URL对应的文件的第二标识,对于每个文件,文件的第二标识是基于该文件的全部内容得到的;
确定第一标识与所述URL关联的文件的第二标识;
判断所述URL对应的文件的第二标识与第一标识与所述URL关联的文件的第二标识是否相同。
4.一种服务器,其特征在于,该服务器包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中一个或多个应用程序被存储在存储器中并被配置为由一个或多个处理器执行,一个或多个应用程序配置用于:执行权利要求1-3中任一项所述的远程文件识别方法。
5.一种计算机可读存储介质,其特征在于,包括:存储有能够被处理器加载并执行如权利要求1-3中任一种远程文件识别方法的计算机程序。
CN202111004658.6A 2021-08-30 2021-08-30 一种远程文件识别方法、装置、服务器及可读存储介质 Active CN113779439B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111004658.6A CN113779439B (zh) 2021-08-30 2021-08-30 一种远程文件识别方法、装置、服务器及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111004658.6A CN113779439B (zh) 2021-08-30 2021-08-30 一种远程文件识别方法、装置、服务器及可读存储介质

Publications (2)

Publication Number Publication Date
CN113779439A CN113779439A (zh) 2021-12-10
CN113779439B true CN113779439B (zh) 2023-12-08

Family

ID=78839968

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111004658.6A Active CN113779439B (zh) 2021-08-30 2021-08-30 一种远程文件识别方法、装置、服务器及可读存储介质

Country Status (1)

Country Link
CN (1) CN113779439B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114500510B (zh) * 2022-01-28 2024-04-16 深圳市优必选科技股份有限公司 请求信息响应方法、装置、通信设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101719936A (zh) * 2009-12-09 2010-06-02 成都市华为赛门铁克科技有限公司 提供文件下载服务的方法、装置及缓存系统
CN103139252A (zh) * 2011-11-30 2013-06-05 北京网康科技有限公司 一种网络代理缓存加速的实现方法及其装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8392973B2 (en) * 2009-05-28 2013-03-05 International Business Machines Corporation Autonomous intelligent user identity manager with context recognition capabilities

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101719936A (zh) * 2009-12-09 2010-06-02 成都市华为赛门铁克科技有限公司 提供文件下载服务的方法、装置及缓存系统
CN103139252A (zh) * 2011-11-30 2013-06-05 北京网康科技有限公司 一种网络代理缓存加速的实现方法及其装置

Also Published As

Publication number Publication date
CN113779439A (zh) 2021-12-10

Similar Documents

Publication Publication Date Title
US10667101B2 (en) Contextual deep linking of applications
CN107633016B (zh) 数据处理方法及装置和电子设备
JP6435398B2 (ja) 端末識別子を促進する方法及びシステム
CN104396220B (zh) 用于安全内容检索的方法和设备
CN100407194C (zh) 一种用于验证文档的网络装置
CN104468860B (zh) 域名解析服务器危险性的识别方法和装置
CN110888838B (zh) 基于对象存储的请求处理方法、装置、设备及存储介质
KR101922680B1 (ko) 자동-제안된 콘텐트 아이템 요청들
CN108173839B (zh) 权限管理方法及系统
CN110659441A (zh) 一种基于区块链的信息发布管理方法及装置
CN110460584B (zh) 访问请求处理方法、装置、电子设备和计算机可读介质
CN108769070A (zh) 一种越权漏洞检测方法及装置
US20210383059A1 (en) Attribution Of Link Selection By A User
CN113779439B (zh) 一种远程文件识别方法、装置、服务器及可读存储介质
CN112069384A (zh) 一种埋点数据处理方法、服务器及可读存储介质
CN109657434A (zh) 应用访问方法及装置
CN109598131A (zh) 一种文件上传、下载方法、装置、电子设备及存储介质
CN111371889B (zh) 消息处理方法、装置、物联网系统和存储介质
US20210209702A1 (en) Addressing propagation of inaccurate information in a social networking environment
US20100082690A1 (en) System And Method For Recording Files Of Data
US10372513B2 (en) Classification of application events using call stacks
CN115203061B (zh) 接口自动化测试方法、装置、电子设备及存储介质
US7930479B2 (en) System and method for caching and retrieving from cache transaction content elements
CN113849125B (zh) 一种cdn服务器磁盘读取的方法、装置及系统
CN109150842A (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