[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN109344348B - 一种资源更新方法及装置 - Google Patents

一种资源更新方法及装置 Download PDF

Info

Publication number
CN109344348B
CN109344348B CN201811102688.9A CN201811102688A CN109344348B CN 109344348 B CN109344348 B CN 109344348B CN 201811102688 A CN201811102688 A CN 201811102688A CN 109344348 B CN109344348 B CN 109344348B
Authority
CN
China
Prior art keywords
page resource
resource
target
updating
update
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
CN201811102688.9A
Other languages
English (en)
Other versions
CN109344348A (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.)
Advanced New Technologies Co Ltd
Advantageous New Technologies Co Ltd
Original Assignee
Advanced New 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 Advanced New Technologies Co Ltd filed Critical Advanced New Technologies Co Ltd
Priority to CN201811102688.9A priority Critical patent/CN109344348B/zh
Publication of CN109344348A publication Critical patent/CN109344348A/zh
Application granted granted Critical
Publication of CN109344348B publication Critical patent/CN109344348B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本说明书一个或多个实施例提供了一种资源更新方法及装置,其中,该方法包括:在目标页面资源发生变更时,获取预先构建的与该目标页面资源相关的逆向引用索引;根据该逆向引用索引,确定目标页面资源的关联页面资源,其中,该关联页面资源直接或间接引用目标页面资源;根据目标页面资源的最新的版本信息,更新关联页面资源。结合页面资源之间的逆向引用索引,确定直接或间接引用目标页面资源的至少一个关联页面资源,进而对该关联页面资源自身的版本信息以及该关联页面资源包含的引用信息中涉及的页面资源的版本信息进行更新,这样能够实现更细粒度的对页面资源进行更新管控,从而提高页面资源的更新效率和准确度。

Description

一种资源更新方法及装置
技术领域
本说明书一个或多个涉及计算机技术领域,尤其涉及一种资源更新方法及装置。
背景技术
目前,随着计算机及互联网技术的快速发展,应用服务器的请求处理量越来越多,为了缓解大量动态请求给应用服务器和数据库带来的高并发压力,同时,为了方便搜索引擎收录,提高SEO(Search Engine Optimization,搜索引擎优化)的效果,通常采用动态网页静态化方案来响应客户端的业务页面请求,即把动态网页以静态网页的形式发布,从而能够提高访问速度以及降低部分安全隐患。
其中,由于利用浏览器的缓存机制和CDN分发技术,能够提高业务页面访问速度,从而提升用户使用体验,但同时也引入了资源管理成本,尤其是对于静态资源变更频率比较高的网站,例如,电商类网站。具体的,需要客户端在本地缓存渲染页面所需的页面资源,这样客户端在渲染某一业务页面时,可以直接根据页面代码加载相应的页面资源,进而渲染得到所需的业务页面,其中,该页面资源可以是html页面模板、css样式表、图片等不需要访问数据库的静态资源。
然而,当某一目标对象的部分静态资源发生变更后,应用服务器需要对该目标对象的所有静态资源进行更新,并触发客户端基于变更后的静态资源更新本地缓存,在对静态资源进行更新的过程主要是:将静态资源的版本信息更新至最新的版本信息,同时针对静态资源之间存在引用关系的情况,当被引用的静态资源发生变更时,将引用该静态资源的其他静态资源中的引用信息更新至最新的版本,由于一个静态资源发生变更时,所有直接或间接的引用该静态资源的其他静态资源均需要进行版本信息更新,这样当静态资源之间的引用关系比较复杂时,为了降低资源数据管理成本,采用直接将所有静态资源统一更新的方式进行处理,并重新打包发布,这样客户端就需要重新缓存所有静态资源。
由此可知,需要提供一种快速、高效、细粒度的静态资源版本更新方案。
发明内容
本说明书一个或多个实施例的目的是提供一种资源更新方法及装置,结合页面资源之间的逆向引用索引,确定直接或间接引用目标页面资源的至少一个关联页面资源,进而对该关联页面资源自身的版本信息以及该关联页面资源包含的引用信息中涉及的页面资源的版本信息进行更新,这样能够实现更细粒度的对页面资源进行更新管控,从而提高页面资源的更新效率和准确度。
为解决上述技术问题,本说明书一个或多个实施例是这样实现的:
本说明书一个或多个实施例提供了一种资源更新方法,包括:
在目标页面资源发生变更时,获取预先构建的与所述目标页面资源相关的逆向引用索引;
根据所述逆向引用索引,确定所述目标页面资源的关联页面资源,其中,所述关联页面资源直接或间接引用所述目标页面资源;
根据所述目标页面资源的最新的版本信息,更新所述关联页面资源。
本说明书一个或多个实施例提供了一种资源更新装置,包括:
逆向索引获取模块,用于在目标页面资源发生变更时,获取预先构建的与所述目标页面资源相关的逆向引用索引;
关联资源确定模块,用于根据所述逆向引用索引,确定所述目标页面资源的关联页面资源,其中,所述关联页面资源直接或间接引用所述目标页面资源;
页面资源更新模块,用于根据所述目标页面资源的最新的版本信息,更新所述关联页面资源。
本说明书一个或多个实施例提供了一种资源更新设备,包括:处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:
在目标页面资源发生变更时,获取预先构建的与所述目标页面资源相关的逆向引用索引;
根据所述逆向引用索引,确定所述目标页面资源的关联页面资源,其中,所述关联页面资源直接或间接引用所述目标页面资源;
根据所述目标页面资源的最新的版本信息,更新所述关联页面资源。
本说明书一个或多个实施例提供了一种存储介质,用于存储计算机可执行指令,所述可执行指令在被执行时实现以下流程:
在目标页面资源发生变更时,获取预先构建的与所述目标页面资源相关的逆向引用索引;
根据所述逆向引用索引,确定所述目标页面资源的关联页面资源,其中,所述关联页面资源直接或间接引用所述目标页面资源;
根据所述目标页面资源的最新的版本信息,更新所述关联页面资源。
本说明书一个或多个实施例中的资源更新方法及装置,在目标页面资源发生变更时,获取预先构建的与该目标页面资源相关的逆向引用索引;根据该逆向引用索引,确定目标页面资源的关联页面资源,其中,该关联页面资源直接或间接引用目标页面资源;根据目标页面资源的最新的版本信息,更新关联页面资源。本说明书一个或多个实施例中,结合页面资源之间的逆向引用索引,确定直接或间接引用目标页面资源的至少一个关联页面资源,进而对该关联页面资源自身的版本信息以及该关联页面资源包含的引用信息中涉及的页面资源的版本信息进行更新,这样能够实现更细粒度的对页面资源进行更新管控,从而提高页面资源的更新效率和准确度。
附图说明
为了更清楚地说明本说明书一个或多个实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书一个或多个中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书一个或多个实施例提供的资源更新方法的第一种流程示意图;
图2为本说明书一个或多个实施例提供的资源更新方法的第二种流程示意图;
图3a为本说明书一个或多个实施例提供的资源更新方法中页面资源之间引用关系的具体结构示意图;
图3b为本说明书一个或多个实施例提供的资源更新方法中逆向引用索引的具体结构示意图;
图4为本说明书一个或多个实施例提供的资源更新方法的第三种流程示意图;
图5为本说明书一个或多个实施例提供的资源更新方法的第四种流程示意图;
图6a为本说明书一个或多个实施例提供的资源更新方法中去重处理前的消息队列的具体结构示意图;
图6b为本说明书一个或多个实施例提供的资源更新方法中去重处理后的消息队列的具体结构示意图;
图7为本说明书一个或多个实施例提供的资源更新装置的第一种模块组成示意图;
图8为本说明书一个或多个实施例提供的资源更新装置的第二种模块组成示意图;
图9为本说明书一个或多个实施例提供的资源更新设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书一个或多个中的技术方案,下面将结合本说明书一个或多个实施例中的附图,对本说明书一个或多个实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一个或多个一部分实施例,而不是全部的实施例。基于本说明书一个或多个中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书一个或多个保护的范围。
本说明书一个或多个实施例提供了一种资源更新方法及装置,结合页面资源之间的逆向引用索引,确定直接或间接引用目标页面资源的至少一个关联页面资源,进而对该关联页面资源自身的版本信息以及该关联页面资源包含的引用信息中涉及的页面资源的版本信息进行更新,这样能够实现更细粒度的对页面资源进行更新管控,从而提高页面资源的更新效率和准确度。
图1为本说明书一个或多个实施例提供的资源更新方法的第一种流程示意图,图1中的方法能够由图1中的应用服务器执行,如图1所示,该方法至少包括以下步骤:
S101,在目标页面资源发生变更时,获取预先构建的与该目标页面资源相关的逆向引用索引;
其中,上述页面资源包括将动态页面以静态页面的形式发布时所涉及的静态资源,例如,页面资源可以是图片、视频、html页面模板、css样式表等等,上述逆向引用索引用于表征各页面资源之间的逆向引用关系,若通过版本信息标记页面资源,当目标页面资源发生变更时,例如,目标页面资源的具体内容被修改,对应的该目标页面资源的版本信息也发生变更,此时需要获取预先构建的针对涉及该目标页面资源的业务功能的逆向引用索引;
S102,根据获取到的逆向引用索引,确定目标页面资源的关联页面资源,其中,该关联页面资源直接或间接引用目标页面资源;
例如,当某一电商类网站中的首页页面上的宣传图片发生变更时,获取与该宣传图片相关的逆向引用索引,再根据该逆向引用索引确定直接或间接引用该宣传图片的关联页面资源;
其中,上述逆向引用索引可以是由多条逆向引用分支构成的,每个逆向引用分支包含具有直接引用关系的一个从页面资源(即被引用页面资源)和至少一个主页面资源(即引用页面资源),主页面资源的代码包含从页面资源的版本信息,达到主页面资源引用从页面资源的目的;
具体的,在多条逆向引用分支中,查找目标页面资源为从页面资源的目标逆向引用分支,该目标逆向引用分支中的主页面资源属于目标页面资源的关联页面资源1,且该关联页面资源1与目标页面资源具有直接引用关系;
另外,关联页面资源1在另一个逆向引用分支可以是从页面资源,即该关联页面资源1被另一个逆向引用分支中的主页面资源所引用;
进一步的,在多条逆向引用分支中,查找关联页面资源1为从页面资源的目标逆向引用分支,该目标逆向引用分支中的主页面资源属于目标页面资源的关联页面资源2,且该关联页面资源2与目标页面资源具有间接引用关系;
同样的,关联页面资源2在又一个逆向引用分支可以是从页面资源,即该关联页面资源2被又一个逆向引用分支中的主页面资源所引用;
更进一步的,在多条逆向引用分支中,查找关联页面资源2为从页面资源的目标逆向引用分支,该目标逆向引用分支中的主页面资源属于目标页面资源的关联页面资源3,且该关联页面资源3与目标页面资源具有间接引用关系,依次类推,直到在多条逆向引用分支中不存在关联页面资源n为从页面资源的目标逆向引用分支、或者以关联页面资源n为从页面资源的逆向引用分支的主页面资源为目标页面资源(即出现引用环路问题);
也就是说,在与发生变更的目标页面资源相关的逆向引用索引中,通过遍历该逆向引用索引中的各逆向引用分支,可以确定出直接或间接引用目标页面资源的至少一个关联页面资源,即关联页面资源1、关联页面资源2…、关联页面资源n;
S103,根据目标页面资源的最新的版本信息,更新确定出的关联页面资源;
其中,由于当页面资源发生变更时,对应的该页面资源的版本信息也发生变更,将该页面资源的版本信息更新为最新的版本信息,并且通过在主页面资源的代码中写入从页面资源的版本信息,达到主页面资源引用从页面资源的目的,因此,需要更新关联页面资源的代码中包含的页面资源的版本信息,以及更新关联页面资源的版本信息,从而实现对页面资源的版本更新控制;
具体的,若目标页面资源的至少一个关联页面资源包括:关联页面资源1、关联页面资源2…、关联页面资源n,根据目标页面资源的最新的版本信息,更新确定出的关联页面资源的过程,具体为:
由于目标页面资源被关联页面资源1所引用,关联页面资源1的代码中包含目标页面资源的版本信息,因此,若目标页面资源的版本信息发生变更,则需要将关联页面资源1的代码中包含的目标页面资源的版本信息进行更新,同时,还需要变更关联页面资源1的版本信息;
进一步的,由于关联页面资源1又被关联页面资源2所引用,关联页面资源2的代码中包含关联页面资源1的版本信息,因此,若关联页面资源1的版本信息发生变更,则需要将关联页面资源2的代码中包含的关联页面资源1的版本信息进行更新,同时,还需要变更关联页面资源2的版本信息;
更进一步的,由于关联页面资源2又被关联页面资源3所引用,关联页面资源3的代码中包含关联页面资源2的版本信息,因此,若关联页面资源2的版本信息发生变更,则需要将关联页面资源3的代码中包含的关联页面资源2的版本信息进行更新,同时,还需要变更关联页面资源3的版本信息,依次类推,直到关联页面资源n的版本信息变更完成,以达到重建静态资源链接的效果,并且在应用服务器只需要更新与变更的页面资源相关的关联页面资源。
在关联页面资源更新后,当客户端中的浏览器访问更新后的页面资源时,基于页面资源的版本信息和页面资源的代码中包含的被引用页面资源的版本信息,判断本地的缓存数据是否为最新版本的缓存数据,若判断结果为否,则重新向应用服务器请求新版本的缓存数据,以更新本地的旧版本的缓存数据更新为新版本的缓存数据,进而达到本地缓存数据自动更新的效果,并且在客户端只需要更新与变更的页面资源相关的缓存数据;
具体的,基于与目标页面资源相关的逆向引用索引,确定发生变更的目标页面资源的关联页面资源,进而对关联页面资源进行更新,以触发客户端对本地缓存进行更新,由于将关联页面资源包含的引用信息中涉及的发生变更的页面资源的版本信息均更新为最新的版本信息,并且客户端的本地缓存也更新为最新版本的静态资源,这样客户端在渲染业务页面时,能够加载到最新版本的静态资源,从而保证客户端渲染得到的网页页面中展示最新版本的页面资源。
进一步的,为了确保向客户端传输更新后的页面资源的传输速度和传输稳定性,从而解决互联网网络拥挤的状况,提高用户访问网站的响应速度,基于此,在上述S103根据目标页面资源的最新的版本信息,更新确定出的关联页面资源之后,还包括:
利用内容分发网络(Content Delivery Network,CDN)将更新后的关联页面资源分发至分布于不同地理位置的应用服务端,以便客户端从满足预设条件的应用服务端处获取更新后的关联页面资源并基于该关联页面资源进行本地缓存更新;其中,该满足预设条件的应用服务端可以是与客户端的距离小于预设距离阈值的应用服务端。
本说明书一个或多个实施例中,结合页面资源之间的逆向引用索引,确定直接或间接引用目标页面资源的至少一个关联页面资源,进而对该关联页面资源自身的版本信息以及该关联页面资源包含的引用信息中涉及的页面资源的版本信息进行更新,这样能够实现更细粒度的对页面资源进行更新管控,从而提高页面资源的更新效率和准确度。
其中,由于当存在页面资源变更时,需要借助逆向引用索引确定直接或间接引用变更的页面资源的关联页面资源,因此,需要预先构建逆向引用索引,基于此,如图2所示,上述S101获取预先构建的与该目标页面资源相关的逆向引用索引之前,还包括:
S104,确定各页面资源之间的引用关系,具体的,针对每个页面资源,基于该页面资源的代码中关于页面资源的引用信息,确定该页面资源所引用的其他页面资源,进而确定各页面资源之间的引用关系;
例如,页面资源a.html文件的具体代码为:
<html>
<head></head>
<body><img src="pathTo/1.jpg><img>"<body>
</html>
由此可知,页面资源a.html引用了页面资源1.jpg,同样的,基于页面资源b.html、页面资源a.css的具体代码,可知页面资源b.html、页面资源a.css也引用了1.jpg等等。
其中,在一个具体实施例中,确定各页面资源之间的引用关系的具体算法伪码可以为:
Figure BDA0001807074420000081
如图3a所示,给出了针对某一网站所提供的新业务功能的业务页面涉及的各页面资源之间引用关系的具体结构示意图,具体的,该引用关系结构中主要包括:页面资源a.html、b.html、c.html、a.css、1.jpg、2.jpg、3.jpg,其中,a.html、b.html、a.css均引用了1.jpg,a.html还引用了2.jpg,a.css还引用了3.jpg,a.html还引用了b.html等等。
S105,根据确定出的引用关系,构建逆向引用索引,其中,该逆向引用索引包括:至少一条逆向引用分支,该逆向引用分支包括:一个被引用的根节点和引用该根节点的至少一个子节点,针对每个逆向引用分支,该逆向引用分支中的根节点用于表示被引用页面资源,子节点用于表示引用页面资源;
具体的,当某一网站的新业务功能上线时,需要根据该新业务功能涉及的多个页面资源之间的引用关系,构建针对该业务功能的逆向引用索引,后续若需要对该业务功能涉及的某一页面资源进行变更,那么所有直接或间接引用变更的页面资源的关联页面资源均需要随之进行更新,此时,可以基于该逆向引用索引确定出关联页面资源。
另外,由于逆向引用索引只与页面资源的引用关系有关,因此,只有页面资源之间的引用关系发生变化时才需要对逆向引用索引进行更新,页面资源的版本信息发生变更并不影响逆向引用索引。
例如,通过遍历图3a中所示的各页面资源之间的引用关系,可知:
所有引用了1.jpg的文件列表,即a.html、b.html、a.css;
所有引用了2.jpg的文件列表,即a.html;
所有引用了3.jpg的文件列表,即a.css;
所有引用了a.css的文件列表,即a.html;
所有引用了b.html的文件列表,即a.html;
所有引用了c.html的文件列表,即a.html;
如图3b所示,基于上述各被引用页面资源的文件列表,确定多个逆向引用分支,再由确定出的多个逆向引用分支得到逆向引用索引,其中,该逆向引用索引包含的逆向引用分支,具体包括:
以1.jpg为根节点且以a.html、b.html、a.css为子节点的逆向引用分支1;
以2.jpg为根节点且以a.html为子节点的逆向引用分支2;
以3.jpg为根节点且以a.css为子节点的逆向引用分支3;
以a.css为根节点且以a.html为子节点的逆向引用分支4;
以b.html为根节点且以a.html为子节点的逆向引用分支5;
以c.html为根节点且以a.html为子节点的逆向引用分支6。
其中,在构建得到上述逆向引用索引的基础上,基于该逆向引用索引查找到与目标页面资源相关的关联页面资源,具体的,如图4所示,上述S102根据获取到的逆向引用索引,确定目标页面资源的关联页面资源,具体包括:
S1021,在获取到的逆向引用索引中,查找与目标页面资源相关的目标逆向引用分支,其中,该目标逆向引用分支中的子节点所表示的页面资源与目标页面资源具有直接或间接的引用关系,具体的,可以利用深度优先算法在获取到的逆向引用索引中,查找与目标页面资源相关的目标逆向引用分支;
S1022,根据查找出的目标逆向引用分支确定目标页面资源的关联页面资源,具体的,将目标逆向引用分支中的子节点作为目标页面资源的关联页面资源。
具体的,上述S1021在获取到的逆向引用索引中,查找与目标页面资源相关的目标逆向引用分支,具体包括:
在获取到的逆向引用索引中,将用于表示目标页面资源的根节点作为首个当前遍历对象;
确定以当前遍历对象为根节点的目标逆向引用分支;以及,
将目标逆向引用分支中的至少一个子节点作为下一个当前遍历对象,并继续执行确定以当前遍历对象为根节点的目标逆向引用分支的步骤,直到所有的当前遍历对象均不属于任一逆向引用分支的根节点、或者以当前遍历对象为根节点的逆向引用分支的子节点为用于表示目标页面资源(即出现引用环路问题)。
具体的,仍以图3b所示的逆向引用索引为例,如果页面资源1.jpg为发生变更的目标页面资源,在该逆向引用索引中,以页面资源1.jpg为根节点的目标逆向引用分支是逆向引用分支1;
对应的,逆向引用分支1中的子节点分别为页面资源a.html、b.html、a.css,其中,a.html、b.html、a.css与1.jpg具有直接引用关系;并且,将a.html、b.html、a.css分别作为下一个当前遍历对象;
以页面资源b.html为根节点的目标逆向引用分支是逆向引用分支5;
对应的,逆向引用分支5中的子节点为页面资源a.html,其中,a.html与1.jpg还具有间接引用关系;并且,将a.html作为下一个当前遍历对象;
以页面资源a.css为根节点的目标逆向引用分支是逆向引用分支4;
对应的,逆向引用分支4中的子节点为页面资源a.html,其中,a.html与1.jpg还具有间接引用关系;并且,将a.html作为下一个当前遍历对象;
由于最终确定出的当前遍历对象均为a.html,且在该逆向引用索引中,不存在以a.html为根节点的逆向引用分支,因此,与目标页面资源相关的目标逆向引用分支分别为:逆向引用分支1、逆向引用分支4、逆向引用分支5;
进而,将目标逆向引用分支中的子节点作为目标页面资源的关联页面资源,对应的,目标页面资源的关联页面资源分别为:页面资源a.html、b.html、a.css、a.html、a.html。
其中,在确定出目标页面资源的关联页面资源后,需要对关联页面资源进行更新,为了进一步提高资源更新效率,简化资源更新处理量,采用基于更新任务集合且当更新任务集合满足预设更新条件时,对更新任务进行集中更新处理的方式,基于此,如图5所示,上述S103根据目标页面资源的最新的版本信息,更新确定出的关联页面资源,具体包括:
S1031,创建针对目标页面资源的更新任务集合,其中,该更新任务集合中的每个更新任务用于触发基于目标页面资源的最新的版本信息更新关联页面资源,并且该更新任务集合可以采用队列、链表或堆栈的数据结构实现;
具体的,针对每个关联页面资源,生成该关联页面资源的更新任务,该更新任务用于触发更新该关联页面资源的代码中包含的发生变更的被引用页面资源的版本信息,以及触发变更该关联页面资源的版本信息;
S1032,判断上述更新任务集合是否符合预设更新条件,其中,该预设更新条件可以是更新任务集合中包含资源本次资源变更事件涉及的所有更新任务,即本次资源变更事件已完成且已将本次资源变更事件涉及的更新任务加入更新任务集合中;还可以是更新任务的数量达到预设阈值,即加入更新任务集合中的更新任务的数量大于或等于预设阈值;
若是,则执行S1033,执行上述更新任务集合中的各个更新任务,具体的,针对每个更新任务,更新该更新任务对应的关联页面资源的代码中包含的发生变更的被引用页面资源的版本信息,以及触发变更该关联页面资源的版本信息,其中,该发生变更的被引用页面资源可以是目标页面资源,还可以是直接或间接因目标页面资源变更而发生变更的其他关联页面资源。
其中,上述S1032判断上述更新任务集合是否符合预设更新条件,具体包括:
判断本次资源变更事件是否完成,和/或判断上述更新任务集合中的更新任务的数量是否大于预设阈值;
若至少一个判断结果为是,则确定上述更新任务集合符合预设更新条件。
具体的,若本次资源变更事件已完成,则确定上述更新任务集合符合预设更新条件,或者若更新任务集合中的更新任务的数量大于预设阈值,则确定上述更新任务集合符合预设更新条件,或者若本次资源变更事件已完成且更新任务集合中的更新任务的数量大于预设阈值,则确定上述更新任务集合符合预设更新条件。也就是说,当静态资源变更事务完成、或者更新任务集合中的更新任务的数量达到最大阈值时,应用系统集中处理更新任务集合中的更新任务。
进一步的,考虑到基于消息队列完成关联页面资源的更新,能够使用发布订阅模式处理更新任务,进而能够实现更新任务分布式并发处理,基于此,优选的,上述更新任务集合采用消息队列的数据结构实现;
对应的,上述S1031创建针对目标页面资源的更新任务集合,具体包括:
根据目标页面资源和关联页面资源,生成更新任务,以及将生成的更新任务按序添加至消息队列中,即更新任务入队;
对应的,上述S1033执行更新任务集合中的各个更新任务,具体包括:
采用分布式并发模式执行消息队列中的各个更新任务,具体的,可以通过分布式系统采用分布式并发模式对消息队列中的更新任务进行一次性消费。
其中,由于考虑到当前前端架构的趋势是组件化、碎片化,使得页面资源之间存在引用关系,一个页面资源的版本信息发生变化,可能导致引用该页面资源的另一个页面资源的版本信息随之变化,即出现一系列关联页面资源需要更新的情况,在更新关联页面资源时,需要更新该关联页面资源的代码中包含的发生变更的被引用页面资源的版本信息,因此,针对每个关联页面资源,需要优先对该关联页面资源所引用的直接或间接发送变更的其他关联页面资源的版本信息进行更新之后,再对该关联页面资源进行更新,即需要先执行针对发生变更的被引用页面资源生成的更新任务,再执行针对该关联页面资源生成的更新任务,这样才能够确保引用该被引用页面资源的关联页面资源的代码中包含的被引用页面资源的版本信息均更新为最新的版本信息;
其中,考虑到针对消息队列而言,可以按照更新任务的入队顺序执行消息队列中的更新任务,因此,在更新任务入队时,需要先确定各更新任务的更新优先级,再按照更新优先级由高到低的顺序将更新任务添加至消息队列中,基于此,上述将生成的更新任务按序添加至消息队列中,具体包括:
将目标页面资源对应的更新任务的更新优先级设置为最高;
针对每个关联页面资源,根据该关联页面资源与其他页面资源的引用关系,确定各关联页面资源的更新优先级,其中,被引用页面资源的更新优先级高于引用页面资源的更新优先级,即先对被引用页面资源进行更新,再对引用页面资源进行更新;
根据目标页面资源的更新优先级和确定出的各关联页面资源的更新优先级,按照优先级由高到低的顺序将生成的更新任务添加至消息队列中。
在一个具体实施例中,仍以图3b所示的逆向引用索引且页面资源1.jpg为发生变更的目标页面资源为例,目标页面资源的关联页面资源分别为:页面资源a.html、b.html、a.css、a.html、a.html;
对应的,若将针对目标页面资源1.jpg生成的更新任务定义为任务0;以及,
将针对由上述逆向引用分支1确定出的关联页面资源a.html生成的更新任务定义为任务1;以及,
将针对关联页面资源b.html生成的更新任务定义为任务2;以及,
将针对关联页面资源a.css生成的更新任务定义为任务3;以及,
将针对由上述逆向引用分支5确定出的关联页面资源a.html生成的更新任务定义为任务4;以及,
将针对由上述逆向引用分支4确定出的关联页面资源a.html生成的更新任务定义为任务5;
如果基于上述关联页面资源的更新优先级的确定方法,得到的更新优先级由高到低的排序为:
(1)任务0对应的目标页面资源1.jpg;
(2)任务2对应的关联页面资源b.html;
(3)任务4对应的关联页面资源a.html;
(4)任务1对应的关联页面资源a.html;
(5)任务3对应的关联页面资源a.css;
(6)任务5对应的关联页面资源a.html;
对应的,如图6a所示,按照1.jpg、b.html、a.html、a.html、a.css、a.html的顺序将更新任务0、更新任务2、更新任务4、更新任务1、更新任务3、更新任务5添加至消息队列中。
进一步的,考虑到某一关联页面资源可能同时引用目标页面资源和至少一个其他关联页面资源,或者同时引用至少两个其他关联页面资源的情况,这样将导致更新任务集合中存在至少两个更新任务是针对同一关联页面资源生成的情况,基于此,上述S1033执行上述更新任务集合中的各个更新任务,具体包括:
根据各更新任务对应的页面资源的唯一性标识,对更新任务集合中的更新任务进行去重处理,得到去重后的更新任务集合;
执行去重后的更新任务集合中的各个更新任务,具体的,对各更新任务对应的关联页面资源进行更新。
其中,上述唯一性标识可以是页面资源的全路径文件名,即若在更新任务集合中存在至少两个关联页面资源的全路径文件名相同,则只保留一个关联页面资源对应的更新任务,例如,在图6a中,存在三个全路径文件名均为a.html的关联页面资源,因此,可以删除两个a.html对应的更新任务,最终保留一个a.html对应的更新任务。
其中,为了确保关联页面资源的代码中包含的被引用页面资源的版本信息均更新为最新的版本信息,基于此,上述根据各更新任务对应的页面资源的唯一性标识,对更新任务集合中的更新任务进行去重处理,得到去重后的更新任务集合,具体包括:
查找具有相同的唯一性标识的页面资源对应的至少两个重复更新任务;
获取至少两个重复更新任务分别对应的页面资源的更新优先级,具体的,该更新优先级是基于上述更新优先级确定方式得到的;
在至少两个重复更新任务中,保留更新优先级最低的页面资源对应的更新任务;
对应的,上述执行去重后的更新任务集合中的各个更新任务,具体包括:
按照优先级由高到低的顺序,执行去重后的更新任务集合中的各个更新任务。
具体的,由于确定出的多个目标逆向引用分支中,可能存在至少两个目标逆向引用分支的子节点所表示的关联页面资源的唯一性标识相同的情况,并且在确定关联页面资源时,并不参考页面资源的唯一性标识,而是直接将目标逆向引用分支中的子节点作为目标页面资源的关联页面资源,同时,由于针对每个关联页面资源均生成一个对应的更新任务,这样将导致更新任务集合中存在至少两个更新任务是针对同一关联页面资源生成的情况,例如,针对基于图3b所示的逆向引用索引且目标页面资源为1.jpg的情况,在确定出的多个目标逆向引用分支中,逆向引用分支1、逆向引用分支4、逆向引用分支5的子节点所表示的关联页面资源均包括a.html,即页面资源a.html同时引用了1.jpg、b.html、a.css,也就是说,以针对图6a中的消息队列为例,具有相同的唯一性标识的页面资源对应的至少两个重复更新任务包括:任务4、任务1、任务5,即对应的关联页面资源的唯一性标识均为a.html;
对应的,如图6b所示,由于在更新任务入队时,按照优先级由高到低的顺序依次将更新任务添加至消息队列中,可知,任务5对应的页面资源a.html的更新优先级最低,因此,在消息队列中,保留任务5,删除任务1和任务4,即最终消息队列中的更新任务包括:任务0、任务2、任务3、任务5;
另外,如果保留任务1,删除任务4和任务5,由于在对关联页面资源a.html的进行更新之前并未执行对关联页面资源a.css进行更新,因此,在在对关联页面资源a.html的进行更新时,无法将页面资源a.html的代码中包含的页面资源a.css的版本信息进行更新,从而导致将出现页面资源a.html的代码中包含的页面资源a.css的版本信息不是最新的版本信息的情况。
其中,上述执行更新任务集合中的各个更新任务,具体包括:
针对每个更新任务,确定该更新任务对应的关联页面资源中的被引用页面资源的最新的版本信息,其中,该被引用页面资源包括:目标页面资源和/或其他关联页面资源;
根据确定出的被引用页面资源的最新的版本信息,更新关联页面资源的属性信息,其中,该属性信息包括:针对目标页面资源的引用信息中的版本信息、针对其他关联页面资源的引用信息中的版本信息、以及关联页面资源的版本信息中的至少一种。
其中,针对目标页面资源的引用信息中的版本信息,是指在关联页面资源直接引用目标页面资源的情况,关联页面资源的代码中包含的目标页面资源的版本信息;针对其他关联页面资源的引用信息中的版本信息,是指在关联页面资源直接引用其他关联页面资源的情况,关联页面资源的代码中包含的其他关联页面资源的版本信息;
例如,页面资源A为商品图片,页面资源B为css样式表,页面资源C为html页面模板,其中,页面资源B引用了页面资源A,即css样式表的代码包含的引用信息中涉及的商品图片的版本信息,页面资源C引用了页面资源B,即html页面模板的代码包含的引用信息中涉及的css样式表的版本信息,此时,如果商品图片发生了变更,即将原商品图片替换为新商品图片,对应的,获取与商品图片相关的逆向引用索引,根据该逆向引用索引,确定商品图片的关联页面资源为css样式表和html页面模板,将css样式表的代码包含的引用信息中涉及的商品图片的版本信息由商品图片的旧版本号更新为商品图片的新版本号,同时,还需要将css样式表的版本信息由旧版本号更新为新版本号,再将html页面模板的代码包含的引用信息中涉及的css样式表的版本信息由css样式表的旧版本号更新为css样式表的新版本号,同时,还需要将html页面模板的版本信息由旧版本号更新为新版本号,依次类推,直到对所有的关联页面资源更新完成。
其中,上述版本信息可以是序列号信息,还可以是时间戳信息,考虑到时间戳信息具有唯一性和自增性,且为了保证页面资源的版本信息能够标记版本的唯一性,可以根据页面资源的更新频率确定时间戳信息的最小单位,例如,当页面资源的更新频率为一天最多更新一次时,时间戳信息可以是以天为最小单位的时间戳,又如,当页面资源的更新频率为一天至少更新两次时,还可以是以小时为最小单位的时间戳,优选的,页面资源的版本信息包括:时间戳信息。
具体的,在对页面资源的版本信息进行更新时,使用时间戳给页面资源打标,即采用更为简单的时间戳作为页面资源的版本控制依据,能够弱化复杂的引用关系,解决了在现代前端工程碎片化结构下,细粒度版本控制带来的高消耗问题,并且基于时间戳信息可以识别出目标页面资源的版本信息和关联页面资源的版本信息是否为最新的版本信息,若是,则不会继续更新,并且在确定关联页面资源时已进行环路问题规避,不会误将目标页面资源再次归为关联页面资源,从而还能够有效规避引用环路问题和更新顺序问题,这样应用系统只需要规划最终的分发部署顺序即可。
在本说明书一个或多个实施例中,通过将时间戳信息作为页面资源的版本控制依据,并且以消息队列的形式对针对页面资源的更新任务进行集中批量消费,以及在进行更新任务批量消费之前对消息队列进行更新任务去重合并处理,这样能够在不损失粒度的前提下提供了轻量级更新方案,进一步提高了页面资源的更新处理效率。
具体的,以图6b中所示更新任务集合为例,针对任务0,将目标页面资源1.jpg的版本信息更新为当前时间戳;
针对任务2,将关联页面资源b.html的代码中1.jpg的版本信息更新为当前时间戳,以及将关联页面资源b.html的版本信息更新为当前时间戳;
针对任务3,将关联页面资源a.css的代码中1.jpg的版本信息更新为当前时间戳,以及将关联页面资源a.css的版本信息更新为当前时间戳;
针对任务5,将关联页面资源a.html的代码中1.jpg的版本信息更新为当前时间戳,将关联页面资源a.html的代码中b.html的版本信息更新为当前时间戳,将关联页面资源a.html的代码中a.css的版本信息更新为当前时间戳,以及将关联页面资源a.html的版本信息更新为当前时间戳。
例如,以页面资源a.html引用目标页面资源1.jpg的相关代码为例,页面资源a.html文件的更新前的具体代码为:
<html>
<head></head>
<body>
<img src="pathto/1.jpg?20180821"/>
</body>
对应的,若目标页面资源1.jpg的最新的时间戳信息为20180822,则页面资源a.html文件的更新后的具体代码为:
<html>
<head></head>
<body>
<img src="pathto/1.jpg?20180822"/>
</body>
也就是说,将<img src="pathto/1.jpg?20180821"/>
替换成
<img src="pathto/1.jpg?20180822"/>。
本说明书一个或多个实施例中的资源更新方法,在目标页面资源发生变更时,获取预先构建的与该目标页面资源相关的逆向引用索引;根据该逆向引用索引,确定目标页面资源的关联页面资源,其中,该关联页面资源直接或间接引用目标页面资源;根据目标页面资源的最新的版本信息,更新关联页面资源。本说明书一个或多个实施例中,结合页面资源之间的逆向引用索引,确定直接或间接引用目标页面资源的至少一个关联页面资源,进而对该关联页面资源自身的版本信息以及该关联页面资源包含的引用信息中涉及的页面资源的版本信息进行更新,这样能够实现更细粒度的对页面资源进行更新管控,从而提高页面资源的更新效率和准确度。
对应上述图1至图6b描述的资源更新方法,基于相同的技术构思,本说明书一个或多个实施例还提供了一种资源更新装置,图7为本说明书一个或多个实施例提供的资源更新装置的第一种模块组成示意图,该装置用于执行图1至图6b描述的资源更新方法,如图7所示,该装置包括:
逆向索引获取模块701,用于在目标页面资源发生变更时,获取预先构建的与所述目标页面资源相关的逆向引用索引;
关联资源确定模块702,用于根据所述逆向引用索引,确定所述目标页面资源的关联页面资源,其中,所述关联页面资源直接或间接引用所述目标页面资源;
页面资源更新模块703,用于根据所述目标页面资源的最新的版本信息,更新所述关联页面资源。
可选地,如图8所示,上述装置还包括:
引用关系确定模块704,用于确定各页面资源之间的引用关系;
逆向索引构建模块705,用于根据确定出的所述引用关系,构建逆向引用索引,其中,所述逆向引用索引包括:至少一条逆向引用分支,所述逆向引用分支包括:一个被引用的根节点和引用所述根节点的至少一个子节点。
可选地,所述关联资源确定模块702,具体用于:
在所述逆向引用索引中,查找与所述目标页面资源相关的目标逆向引用分支;
根据所述目标逆向引用分支确定所述目标页面资源的关联页面资源。
可选地,所述关联资源确定模块702,进一步具体用于:
在所述逆向引用索引中,将用于表示所述目标页面资源的根节点作为首个当前遍历对象;
确定以所述当前遍历对象为根节点的目标逆向引用分支;以及,
将所述目标逆向引用分支中的至少一个子节点作为下一个当前遍历对象,并继续执行确定以所述当前遍历对象为根节点的目标逆向引用分支的步骤,直到所述当前遍历对象不属于任一逆向引用分支的根节点、或者以所述当前遍历对象为根节点的逆向引用分支的子节点为用于表示所述目标页面资源。
可选地,所述页面资源更新模块703,具体用于:
创建针对所述目标页面资源的更新任务集合,其中,所述更新任务集合中的每个更新任务用于触发基于所述目标页面资源的最新的版本信息更新所述关联页面资源;
若所述更新任务集合符合预设更新条件,则执行所述更新任务集合中的各个所述更新任务。
可选地,所述更新任务集合采用队列、链表或堆栈的数据结构实现。
可选地,所述更新任务集合采用消息队列的数据结构实现;
所述页面资源更新模块703,进一步具体用于:
根据所述目标页面资源和所述关联页面资源,生成更新任务,以及将所述更新任务按序添加至所述消息队列中;
采用分布式并发模式执行所述消息队列中的各个更新任务。
可选地,页面资源更新模块703,还具体用于:
判断本次资源变更事件是否完成,和/或判断所述更新任务集合中的更新任务的数量是否大于预设阈值;
若至少一个判断结果为是,则确定所述更新任务集合符合预设更新条件。
可选地,页面资源更新模块703,进一步具体用于:
根据各所述更新任务对应的页面资源的唯一性标识,对所述更新任务集合中的更新任务进行去重处理,得到去重后的更新任务集合;
执行去重后的更新任务集合中的各个所述更新任务。
可选地,所述页面资源更新模块703,进一步具体用于:
针对每个所述更新任务,确定该更新任务对应的关联页面资源中的被引用页面资源的最新的版本信息,其中,所述被引用页面资源包括:目标页面资源和/或其他关联页面资源;
根据所述被引用页面资源的最新的版本信息,更新所述关联页面资源的属性信息,其中,所述属性信息包括:针对目标页面资源的引用信息中的版本信息、针对其他关联页面资源的引用信息中的版本信息、以及所述关联页面资源的版本信息中的至少一种。
可选地,所述版本信息包括:时间戳信息。
可选地,上述装置还包括:
页面资源分发模块706,用于利用内容分发网络将更新后的所述关联页面资源分发至分布于不同地理位置的应用服务端,以便客户端从所述应用服务端处获取所述关联页面资源并基于该关联页面资源进行本地缓存更新。
本说明书一个或多个实施例中的资源更新装置,在目标页面资源发生变更时,获取预先构建的与该目标页面资源相关的逆向引用索引;根据该逆向引用索引,确定目标页面资源的关联页面资源,其中,该关联页面资源直接或间接引用目标页面资源;根据目标页面资源的最新的版本信息,更新关联页面资源。本说明书一个或多个实施例中,结合页面资源之间的逆向引用索引,确定直接或间接引用目标页面资源的至少一个关联页面资源,进而对该关联页面资源自身的版本信息以及该关联页面资源包含的引用信息中涉及的页面资源的版本信息进行更新,这样能够实现更细粒度的对页面资源进行更新管控,从而提高页面资源的更新效率和准确度。
需要说明的是,本说明书中该实施例与本说明书中上一实施例基于同一发明构思,因此该实施例的具体实施可以参见前述资源更新方法的实施,重复之处不再赘述。
进一步地,对应上述图1至图6b所示的方法,基于相同的技术构思,本说明书一个或多个实施例还提供了一种资源更新设备,该设备用于执行上述的资源更新方法,如图9所示。
资源更新设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上的处理器901和存储器902,存储器902中可以存储有一个或一个以上存储应用程序或数据。其中,存储器902可以是短暂存储或持久存储。存储在存储器902的应用程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对资源更新设备中的一系列计算机可执行指令。更进一步地,处理器901可以设置为与存储器902通信,在资源更新设备上执行存储器902中的一系列计算机可执行指令。资源更新设备还可以包括一个或一个以上电源903,一个或一个以上有线或无线网络接口904,一个或一个以上输入输出接口905,一个或一个以上键盘906等。
在一个具体的实施例中,资源更新设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对资源更新设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:
在目标页面资源发生变更时,获取预先构建的与所述目标页面资源相关的逆向引用索引;
根据所述逆向引用索引,确定所述目标页面资源的关联页面资源,其中,所述关联页面资源直接或间接引用所述目标页面资源;
根据所述目标页面资源的最新的版本信息,更新所述关联页面资源。
可选地,计算机可执行指令在被执行时,还包含用于进行以下计算机可执行指令:
所述获取预先构建的与所述目标页面资源相关的逆向引用索引之前,还包括:
确定各页面资源之间的引用关系;
根据确定出的所述引用关系,构建逆向引用索引,其中,所述逆向引用索引包括:至少一条逆向引用分支,所述逆向引用分支包括:一个被引用的根节点和引用所述根节点的至少一个子节点。
可选地,计算机可执行指令在被执行时,所述根据所述逆向引用索引,确定所述目标页面资源相关的关联页面资源,包括:
在所述逆向引用索引中,查找与所述目标页面资源相关的目标逆向引用分支;
根据所述目标逆向引用分支确定所述目标页面资源的关联页面资源。
可选地,计算机可执行指令在被执行时,所述在所述逆向引用索引中,查找与所述目标页面资源相关的目标逆向引用分支,包括:
在所述逆向引用索引中,将用于表示所述目标页面资源的根节点作为首个当前遍历对象;
确定以所述当前遍历对象为根节点的目标逆向引用分支;以及,
将所述目标逆向引用分支中的至少一个子节点作为下一个当前遍历对象,并继续执行确定以所述当前遍历对象为根节点的目标逆向引用分支的步骤,直到所述当前遍历对象不属于任一逆向引用分支的根节点、或者以所述当前遍历对象为根节点的逆向引用分支的子节点为用于表示所述目标页面资源。
可选地,计算机可执行指令在被执行时,所述根据所述目标页面资源的最新的版本信息,更新所述关联页面资源,包括:
创建针对所述目标页面资源的更新任务集合,其中,所述更新任务集合中的每个更新任务用于触发基于所述目标页面资源的最新的版本信息更新所述关联页面资源;
若所述更新任务集合符合预设更新条件,则执行所述更新任务集合中的各个所述更新任务。
可选地,计算机可执行指令在被执行时,所述更新任务集合采用队列、链表或堆栈的数据结构实现。
可选地,计算机可执行指令在被执行时,所述更新任务集合采用消息队列的数据结构实现;
所述创建针对所述目标页面资源的更新任务集合,包括:
根据所述目标页面资源和所述关联页面资源,生成更新任务,以及将所述更新任务按序添加至所述消息队列中;
所述执行所述更新任务集合中的各个所述更新任务,包括:
采用分布式并发模式执行所述消息队列中的各个更新任务。
可选地,计算机可执行指令在被执行时,还包含用于进行以下计算机可执行指令:
在创建针对所述目标页面资源的更新任务集合之后,还包括:
判断本次资源变更事件是否完成,和/或判断所述更新任务集合中的更新任务的数量是否大于预设阈值;
若至少一个判断结果为是,则确定所述更新任务集合符合预设更新条件。
可选地,计算机可执行指令在被执行时,所述执行所述更新任务集合中的各个所述更新任务,具体包括:
根据各所述更新任务对应的页面资源的唯一性标识,对所述更新任务集合中的更新任务进行去重处理,得到去重后的更新任务集合;
执行去重后的更新任务集合中的各个所述更新任务。
可选地,计算机可执行指令在被执行时,所述执行所述更新任务集合中的各个所述更新任务,包括:
针对每个所述更新任务,确定该更新任务对应的关联页面资源中的被引用页面资源的最新的版本信息,其中,所述被引用页面资源包括:目标页面资源和/或其他关联页面资源;
根据所述被引用页面资源的最新的版本信息,更新所述关联页面资源的属性信息,其中,所述属性信息包括:针对目标页面资源的引用信息中的版本信息、针对其他关联页面资源的引用信息中的版本信息、以及所述关联页面资源的版本信息中的至少一种。
可选地,计算机可执行指令在被执行时,所述版本信息包括:时间戳信息。
可选地,计算机可执行指令在被执行时,还包含用于进行以下计算机可执行指令:
在根据所述目标页面资源的最新的版本信息,更新所述关联页面资源之后,还包括:
利用内容分发网络将更新后的所述关联页面资源分发至分布于不同地理位置的应用服务端,以便客户端从所述应用服务端处获取所述关联页面资源并基于该关联页面资源进行本地缓存更新。
本说明书一个或多个实施例中的资源更新设备,在目标页面资源发生变更时,获取预先构建的与该目标页面资源相关的逆向引用索引;根据该逆向引用索引,确定目标页面资源的关联页面资源,其中,该关联页面资源直接或间接引用目标页面资源;根据目标页面资源的最新的版本信息,更新关联页面资源。本说明书一个或多个实施例中,结合页面资源之间的逆向引用索引,确定直接或间接引用目标页面资源的至少一个关联页面资源,进而对该关联页面资源自身的版本信息以及该关联页面资源包含的引用信息中涉及的页面资源的版本信息进行更新,这样能够实现更细粒度的对页面资源进行更新管控,从而提高页面资源的更新效率和准确度。
进一步地,对应上述图1至图6b所示的方法,基于相同的技术构思,本说明书一个或多个实施例还提供了一种存储介质,用于存储计算机可执行指令,一种具体的实施例中,该存储介质可以为U盘、光盘、硬盘等,该存储介质存储的计算机可执行指令在被处理器执行时,能实现以下流程:
在目标页面资源发生变更时,获取预先构建的与所述目标页面资源相关的逆向引用索引;
根据所述逆向引用索引,确定所述目标页面资源的关联页面资源,其中,所述关联页面资源直接或间接引用所述目标页面资源;
根据所述目标页面资源的最新的版本信息,更新所述关联页面资源。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,还实现以下流程:
所述获取预先构建的与所述目标页面资源相关的逆向引用索引之前,还包括:
确定各页面资源之间的引用关系;
根据确定出的所述引用关系,构建逆向引用索引,其中,所述逆向引用索引包括:至少一条逆向引用分支,所述逆向引用分支包括:一个被引用的根节点和引用所述根节点的至少一个子节点。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述根据所述逆向引用索引,确定所述目标页面资源相关的关联页面资源,包括:
在所述逆向引用索引中,查找与所述目标页面资源相关的目标逆向引用分支;
根据所述目标逆向引用分支确定所述目标页面资源的关联页面资源。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述在所述逆向引用索引中,查找与所述目标页面资源相关的目标逆向引用分支,包括:
在所述逆向引用索引中,将用于表示所述目标页面资源的根节点作为首个当前遍历对象;
确定以所述当前遍历对象为根节点的目标逆向引用分支;以及,
将所述目标逆向引用分支中的至少一个子节点作为下一个当前遍历对象,并继续执行确定以所述当前遍历对象为根节点的目标逆向引用分支的步骤,直到所述当前遍历对象不属于任一逆向引用分支的根节点、或者以所述当前遍历对象为根节点的逆向引用分支的子节点为用于表示所述目标页面资源。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述根据所述目标页面资源的最新的版本信息,更新所述关联页面资源,包括:
创建针对所述目标页面资源的更新任务集合,其中,所述更新任务集合中的每个更新任务用于触发基于所述目标页面资源的最新的版本信息更新所述关联页面资源;
若所述更新任务集合符合预设更新条件,则执行所述更新任务集合中的各个所述更新任务。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述更新任务集合采用队列、链表或堆栈的数据结构实现。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述更新任务集合采用消息队列的数据结构实现;
所述创建针对所述目标页面资源的更新任务集合,包括:
根据所述目标页面资源和所述关联页面资源,生成更新任务,以及将所述更新任务按序添加至所述消息队列中;
所述执行所述更新任务集合中的各个所述更新任务,包括:
采用分布式并发模式执行所述消息队列中的各个更新任务。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,还实现以下流程:
在创建针对所述目标页面资源的更新任务集合之后,还包括:
判断本次资源变更事件是否完成,和/或判断所述更新任务集合中的更新任务的数量是否大于预设阈值;
若至少一个判断结果为是,则确定所述更新任务集合符合预设更新条件。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述执行所述更新任务集合中的各个所述更新任务,具体包括:
根据各所述更新任务对应的页面资源的唯一性标识,对所述更新任务集合中的更新任务进行去重处理,得到去重后的更新任务集合;
执行去重后的更新任务集合中的各个所述更新任务。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述执行所述更新任务集合中的各个所述更新任务,包括:
针对每个所述更新任务,确定该更新任务对应的关联页面资源中的被引用页面资源的最新的版本信息,其中,所述被引用页面资源包括:目标页面资源和/或其他关联页面资源;
根据所述被引用页面资源的最新的版本信息,更新所述关联页面资源的属性信息,其中,所述属性信息包括:针对目标页面资源的引用信息中的版本信息、针对其他关联页面资源的引用信息中的版本信息、以及所述关联页面资源的版本信息中的至少一种。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述版本信息包括:时间戳信息。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,还实现以下流程:
在根据所述目标页面资源的最新的版本信息,更新所述关联页面资源之后,还包括:
利用内容分发网络将更新后的所述关联页面资源分发至分布于不同地理位置的应用服务端,以便客户端从所述应用服务端处获取所述关联页面资源并基于该关联页面资源进行本地缓存更新。
本说明书一个或多个实施例中的存储介质存储的计算机可执行指令在被处理器执行时,在目标页面资源发生变更时,获取预先构建的与该目标页面资源相关的逆向引用索引;根据该逆向引用索引,确定目标页面资源的关联页面资源,其中,该关联页面资源直接或间接引用目标页面资源;根据目标页面资源的最新的版本信息,更新关联页面资源。本说明书一个或多个实施例中,结合页面资源之间的逆向引用索引,确定直接或间接引用目标页面资源的至少一个关联页面资源,进而对该关联页面资源自身的版本信息以及该关联页面资源包含的引用信息中涉及的页面资源的版本信息进行更新,这样能够实现更细粒度的对页面资源进行更新管控,从而提高页面资源的更新效率和准确度。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HD Cal、JHDL(Java Hardware Description Language)、Lava、Lola、My HDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书一个或多个时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本说明书一个或多个的实施例可提供为方法、系统、或计算机程序产品。因此,本说明书一个或多个可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书一个或多个可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书一个或多个是参照根据本说明书一个或多个实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本说明书一个或多个的实施例可提供为方法、系统或计算机程序产品。因此,本说明书一个或多个可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书一个或多个可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书一个或多个可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书一个或多个,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书一个或多个的实施例而已,并不用于限制本说明书一个或多个。对于本领域技术人员来说,本说明书一个或多个可以有各种更改和变化。凡在本说明书一个或多个的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书一个或多个的权利要求范围之内。

Claims (26)

1.一种资源更新方法,其特征在于,包括:
在目标页面资源发生变更时,获取预先构建的与所述目标页面资源相关的逆向引用索引;其中,所述逆向引用索引是基于各页面资源之间的引用关系所确定的;
根据所述逆向引用索引,确定所述目标页面资源的关联页面资源,其中,所述关联页面资源直接或间接引用所述目标页面资源;
根据所述目标页面资源的最新的版本信息,更新所述关联页面资源。
2.根据权利要求1所述的方法,其特征在于,所述获取预先构建的与所述目标页面资源相关的逆向引用索引之前,还包括:
确定各页面资源之间的引用关系;
根据确定出的所述引用关系,构建逆向引用索引,其中,所述逆向引用索引包括:至少一条逆向引用分支,所述逆向引用分支包括:一个被引用的根节点和引用所述根节点的至少一个子节点。
3.根据权利要求2所述的方法,其特征在于,所述根据所述逆向引用索引,确定所述目标页面资源相关的关联页面资源,包括:
在所述逆向引用索引中,查找与所述目标页面资源相关的目标逆向引用分支;
根据所述目标逆向引用分支确定所述目标页面资源的关联页面资源。
4.根据权利要求3所述的方法,其特征在于,所述在所述逆向引用索引中,查找与所述目标页面资源相关的目标逆向引用分支,包括:
在所述逆向引用索引中,将用于表示所述目标页面资源的根节点作为首个当前遍历对象;
确定以所述当前遍历对象为根节点的目标逆向引用分支;以及,
将所述目标逆向引用分支中的至少一个子节点作为下一个当前遍历对象,并继续执行确定以所述当前遍历对象为根节点的目标逆向引用分支的步骤,直到所述当前遍历对象不属于任一逆向引用分支的根节点、或者以所述当前遍历对象为根节点的逆向引用分支的子节点为用于表示所述目标页面资源。
5.根据权利要求1所述的方法,其特征在于,所述根据所述目标页面资源的最新的版本信息,更新所述关联页面资源,包括:
创建针对所述目标页面资源的更新任务集合,其中,所述更新任务集合中的每个更新任务用于触发基于所述目标页面资源的最新的版本信息更新所述关联页面资源;
若所述更新任务集合符合预设更新条件,则执行所述更新任务集合中的各个所述更新任务。
6.根据权利要求5所述的方法,其特征在于,所述更新任务集合采用队列、链表或堆栈的数据结构实现。
7.根据权利要求6所述的方法,其特征在于,所述更新任务集合采用消息队列的数据结构实现;
所述创建针对所述目标页面资源的更新任务集合,包括:
根据所述目标页面资源和所述关联页面资源,生成更新任务,以及将所述更新任务按序添加至所述消息队列中;
所述执行所述更新任务集合中的各个所述更新任务,包括:
采用分布式并发模式执行所述消息队列中的各个更新任务。
8.根据权利要求5所述的方法,其特征在于,在创建针对所述目标页面资源的更新任务集合之后,还包括:
判断本次资源变更事件是否完成,和/或判断所述更新任务集合中的更新任务的数量是否大于预设阈值;
若至少一个判断结果为是,则确定所述更新任务集合符合预设更新条件。
9.根据权利要求5所述的方法,其特征在于,所述执行所述更新任务集合中的各个所述更新任务,包括:
根据各所述更新任务对应的页面资源的唯一性标识,对所述更新任务集合中的更新任务进行去重处理,得到去重后的更新任务集合;
执行去重后的所述更新任务集合中的各个所述更新任务。
10.根据权利要求5所述的方法,其特征在于,所述执行所述更新任务集合中的各个所述更新任务,包括:
针对每个所述更新任务,确定该更新任务对应的关联页面资源中的被引用页面资源的最新的版本信息,其中,所述被引用页面资源包括:目标页面资源和/或其他关联页面资源;
根据所述被引用页面资源的最新的版本信息,更新所述关联页面资源的属性信息,其中,所述属性信息包括:针对目标页面资源的引用信息中的版本信息、针对其他关联页面资源的引用信息中的版本信息、以及所述关联页面资源的版本信息中的至少一种。
11.根据权利要求1至10任一项所述的方法,其特征在于,所述版本信息包括:时间戳信息。
12.根据权利要求1至10任一项所述的方法,其特征在于,在根据所述目标页面资源的最新的版本信息,更新所述关联页面资源之后,还包括:
利用内容分发网络将更新后的所述关联页面资源分发至分布于不同地理位置的应用服务端,以便客户端从所述应用服务端处获取所述关联页面资源并基于该关联页面资源进行本地缓存更新。
13.一种资源更新装置,其特征在于,包括:
逆向索引获取模块,用于在目标页面资源发生变更时,获取预先构建的与所述目标页面资源相关的逆向引用索引;其中,所述逆向引用索引是基于各页面资源之间的引用关系所确定的;
关联资源确定模块,用于根据所述逆向引用索引,确定所述目标页面资源的关联页面资源,其中,所述关联页面资源直接或间接引用所述目标页面资源;
页面资源更新模块,用于根据所述目标页面资源的最新的版本信息,更新所述关联页面资源。
14.根据权利要求13所述的装置,其特征在于,还包括:
引用关系确定模块,用于确定各页面资源之间的引用关系;
逆向索引构建模块,用于根据确定出的所述引用关系,构建逆向引用索引,其中,所述逆向引用索引包括:至少一条逆向引用分支,所述逆向引用分支包括:一个被引用的根节点和引用所述根节点的至少一个子节点。
15.根据权利要求14所述的装置,其特征在于,所述关联资源确定模块,具体用于:
在所述逆向引用索引中,查找与所述目标页面资源相关的目标逆向引用分支;
根据所述目标逆向引用分支确定所述目标页面资源的关联页面资源。
16.根据权利要求15所述的装置,其特征在于,所述关联资源确定模块,进一步具体用于:
在所述逆向引用索引中,将用于表示所述目标页面资源的根节点作为首个当前遍历对象;
确定以所述当前遍历对象为根节点的目标逆向引用分支;以及,
将所述目标逆向引用分支中的至少一个子节点作为下一个当前遍历对象,并继续执行确定以所述当前遍历对象为根节点的目标逆向引用分支的步骤,直到所述当前遍历对象不属于任一逆向引用分支的根节点、或者以所述当前遍历对象为根节点的逆向引用分支的子节点为用于表示所述目标页面资源。
17.根据权利要求13所述的装置,其特征在于,所述页面资源更新模块,具体用于:
创建针对所述目标页面资源的更新任务集合,其中,所述更新任务集合中的每个更新任务用于触发基于所述目标页面资源的最新的版本信息更新所述关联页面资源;
若所述更新任务集合符合预设更新条件,则执行所述更新任务集合中的各个所述更新任务。
18.根据权利要求17所述的装置,其特征在于,所述更新任务集合采用队列、链表或堆栈的数据结构实现。
19.根据权利要求18所述的装置,其特征在于,所述更新任务集合采用消息队列的数据结构实现;
所述页面资源更新模块,进一步具体用于:
根据所述目标页面资源和所述关联页面资源,生成更新任务,以及将所述更新任务按序添加至所述消息队列中;
采用分布式并发模式执行所述消息队列中的各个更新任务。
20.根据权利要求17所述的装置,其特征在于,所述页面资源更新模块,还具体用于:
判断本次资源变更事件是否完成,和/或判断所述更新任务集合中的更新任务的数量是否大于预设阈值;
若至少一个判断结果为是,则确定所述更新任务集合符合预设更新条件。
21.根据权利要求17所述的装置,其特征在于,所述页面资源更新模块,还具体用于:
根据各所述更新任务对应的页面资源的唯一性标识,对所述更新任务集合中的更新任务进行去重处理,得到去重后的更新任务集合;
执行去重后的所述更新任务集合中的各个所述更新任务。
22.根据权利要求17所述的装置,其特征在于,所述页面资源更新模块,进一步具体用于:
针对每个所述更新任务,确定该更新任务对应的关联页面资源中的被引用页面资源的最新的版本信息,其中,所述被引用页面资源包括:目标页面资源和/或其他关联页面资源;
根据所述被引用页面资源的最新的版本信息,更新所述关联页面资源的属性信息,其中,所述属性信息包括:针对目标页面资源的引用信息中的版本信息、针对其他关联页面资源的引用信息中的版本信息、以及所述关联页面资源的版本信息中的至少一种。
23.根据权利要求13至22任一项所述的装置,其特征在于,所述版本信息包括:时间戳信息。
24.根据权利要求13至22任一项所述的装置,其特征在于,还包括:
页面资源分发模块,用于利用内容分发网络将更新后的所述关联页面资源分发至分布于不同地理位置的应用服务端,以便客户端从所述应用服务端处获取所述关联页面资源并基于该关联页面资源进行本地缓存更新。
25.一种资源更新设备,其特征在于,包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:
在目标页面资源发生变更时,获取预先构建的与所述目标页面资源相关的逆向引用索引;其中,所述逆向引用索引是基于各页面资源之间的引用关系所确定的;
根据所述逆向引用索引,确定所述目标页面资源的关联页面资源,其中,所述关联页面资源直接或间接引用所述目标页面资源;
根据所述目标页面资源的最新的版本信息,更新所述关联页面资源。
26.一种存储介质,用于存储计算机可执行指令,其特征在于,所述可执行指令在被执行时实现以下流程:
在目标页面资源发生变更时,获取预先构建的与所述目标页面资源相关的逆向引用索引;其中,所述逆向引用索引是基于各页面资源之间的引用关系所确定的;
根据所述逆向引用索引,确定所述目标页面资源的关联页面资源,其中,所述关联页面资源直接或间接引用所述目标页面资源;
根据所述目标页面资源的最新的版本信息,更新所述关联页面资源。
CN201811102688.9A 2018-09-20 2018-09-20 一种资源更新方法及装置 Active CN109344348B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811102688.9A CN109344348B (zh) 2018-09-20 2018-09-20 一种资源更新方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811102688.9A CN109344348B (zh) 2018-09-20 2018-09-20 一种资源更新方法及装置

Publications (2)

Publication Number Publication Date
CN109344348A CN109344348A (zh) 2019-02-15
CN109344348B true CN109344348B (zh) 2021-12-21

Family

ID=65306313

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811102688.9A Active CN109344348B (zh) 2018-09-20 2018-09-20 一种资源更新方法及装置

Country Status (1)

Country Link
CN (1) CN109344348B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111200634B (zh) * 2019-12-06 2023-04-18 中国联合网络通信集团有限公司 缓存资源联动更新方法、系统及服务器
CN111209022A (zh) * 2020-01-03 2020-05-29 支付宝(杭州)信息技术有限公司 资源发布及获取方法、装置及设备
CN111222075A (zh) * 2020-01-15 2020-06-02 平安普惠企业管理有限公司 基于多Webview的数据传输方法、服务器及存储介质
CN113495737B (zh) * 2020-04-01 2024-05-03 腾讯科技(深圳)有限公司 一种软件更新方法及相关设备
CN113495788B (zh) * 2020-04-08 2025-07-01 深圳市茁壮网络股份有限公司 资源的请求方法及服务器、客户端
CN112286545B (zh) * 2020-09-21 2023-05-05 长沙市到家悠享网络科技有限公司 数据更新方法、装置、设备和存储介质
CN113221049B (zh) * 2021-04-27 2023-09-01 北京奇艺世纪科技有限公司 页面更新方法、装置、电子设备及存储介质
CN115982491A (zh) * 2023-03-20 2023-04-18 建信金融科技有限责任公司 页面更新方法及装置、电子设备和计算机可读存储介质
CN116546093B (zh) * 2023-07-04 2023-10-20 云账户技术(天津)有限公司 一种基于静态资源管理平台的资源获取方法及装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101287013B (zh) * 2008-05-30 2011-03-16 杭州华三通信技术有限公司 一种更新Web页面的方法和Web代理设备
CN103345393B (zh) * 2013-07-03 2016-05-18 北京京东尚科信息技术有限公司 一种控制网页的方法和装置
CN104965764A (zh) * 2015-06-02 2015-10-07 百度在线网络技术(北京)有限公司 静态资源的处理方法及装置
CN105808702B (zh) * 2016-03-04 2019-07-02 华自科技股份有限公司 页面内容刷新方法、系统及页面内容同步刷新的管理系统

Also Published As

Publication number Publication date
CN109344348A (zh) 2019-02-15

Similar Documents

Publication Publication Date Title
CN109344348B (zh) 一种资源更新方法及装置
CN106970936B (zh) 数据处理方法及装置、数据查询方法及装置
CN107526777B (zh) 一种基于版本号对文件进行处理的方法及设备
CN107450979B (zh) 一种区块链共识方法及装置
CN107395665B (zh) 一种区块链业务受理及业务共识方法及装置
CN107562467B (zh) 页面渲染方法、装置及设备
CN108418851B (zh) 策略发布系统、方法、装置及设备
US11443054B2 (en) Referenced access control list
CN108848244B (zh) 一种分页显示的方法及装置
CN107018174B (zh) 一种单元化系统服务处理的方法、装置及业务处理系统
US11010401B2 (en) Efficient snapshot generation of data tables
WO2016155669A1 (zh) 一种数据存储方法及装置
CN107391101B (zh) 一种信息处理方法及装置
CN108459913B (zh) 数据并行处理方法、装置及服务器
CN110059090B (zh) 一种位图索引的写入/转储/合并/查询方法和装置
CN110955720B (zh) 一种数据加载方法、装置及系统
WO2020041950A1 (zh) 一种基于b+树索引的数据更新方法、装置及存储装置
US11080207B2 (en) Caching framework for big-data engines in the cloud
KR101621385B1 (ko) 클라우드 스토리지 서비스의 파일 검색 시스템 및 방법, 및 파일 제어 방법
CN108491468A (zh) 一种文档处理方法、装置及服务器
CN110399359A (zh) 一种数据回溯方法、装置及设备
CN108959330B (zh) 一种数据库的处理、数据查询方法及设备
US8396858B2 (en) Adding entries to an index based on use of the index
CN109388764A (zh) 一种本地缓存的更新方法、装置、设备及系统
CN110069523A (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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20200925

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman, British Islands

Applicant after: Innovative advanced technology Co.,Ltd.

Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman, British Islands

Applicant before: Advanced innovation technology Co.,Ltd.

Effective date of registration: 20200925

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman, British Islands

Applicant after: Advanced innovation technology Co.,Ltd.

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Applicant before: Alibaba Group Holding Ltd.

GR01 Patent grant
GR01 Patent grant