发明内容
本公开实施例至少提供一种页面内容更新方法及装置,用以提高页面展示数据的更新效率和资源利用率。
第一方面,本公开实施例提供了一种页面内容更新方法,包括:
响应于第一展示页面中第一内容单元的更新,获取所述第一内容单元的属性信息,所述属性信息包括所述第一内容单元的标识信息和所述第一内容单元的更新信息;
根据所述第一内容单元的标识信息查找所述第一内容单元的关联关系表;
基于所述第一内容单元的关联关系列表,确定待更新的至少一个第二展示页面;其中,所述关联关系列表中包括内容单元与具有所述内容单元的至少一个展示页面之间的关联关系;
在所述至少一个第二展示页面中查找具有所述第一内容单元的标识信息的第二内容单元,根据所述第一内容单元的更新信息对所述第二内容单元进行更新。
在一种可能的实施方式中,所述方法还包括:
获取展示页面的属性信息;所述展示页面的属性信息包括所述展示页面中包括的至少一个内容单元的标识信息,以及所述展示页面的标识信息;
根据每个所述展示页面的属性信息,建立内容单元与至少一个展示页面的关联关系,生成内容单元对应的关联关系列表。
在一种可能的实施方式中,所述展示页面的标识信息包括所述展示页面的场景标识;所述方法还包括:
在内容单元关联的至少一个展示页面中,基于各所述展示页面的场景标识、以及预先建立的场景关联关系列表,确定各所述展示页面的关联关系。
在一种可能的实施方式中,所述基于所述第一内容单元的关联关系列表,确定待更新的至少一个第二展示页面,包括:
将所述第一内容单元的关联关系表中指示的与所述第一内容单元存在关联关系的展示页面作为待选展示页面;
基于所述第一展示页面的场景标识以及各所述待选展示页面的关联关系,从所述待选展示页面中筛选出至少一个第二展示页面。
在一种可能的实施方式中,所述将所述第一内容单元的关联关系表中指示的与所述第一内容单元存在关联关系的展示页面作为待选展示页面,包括:
根据所述第一内容单元的更新信息的类型从所述第一内容单元的关联关系表中查找所述待选展示页面。
在一种可能的实施方式中,所述根据所述第一内容单元的更新信息对所述第二内容单元进行更新,包括:
若所述第一内容单元的更新信息为针对所述第一内容单元的删除信息,则将所述第二内容单元从所述第二展示页面中删除;
在所述第二展示页面中不存在内容单元时,则将所述第二展示页面删除。
在一种可能的实施方式中,将所述第二内容单元从所述第二展示页面中删除后,所述方法还包括:
将所述第一内容单元的关联关系列表中,所述第二展示页面与所述第一内容单元的关联关系删除。
在一种可能的实施方式中,所述方法还包括:
基于展示页面中包括的内容单元,生成展示页面的关联关系列表;
将所述展示页面的关联关系列表与内容单元的关联关系列表存储在数据仓库中。
第二方面,本公开实施例还提供一种页面内容更新装置,包括:
获取模块,用于响应于第一展示页面中第一内容单元的更新,获取所述第一内容单元的属性信息,所述属性信息包括所述第一内容单元的标识信息和所述第一内容单元的更新信息;
查找模块,用于根据所述第一内容单元的标识信息查找所述第一内容单元的关联关系表;
确定模块,用于基于所述第一内容单元的关联关系列表,确定待更新的至少一个第二展示页面;其中,所述关联关系列表中包括内容单元与具有所述内容单元的至少一个展示页面之间的关联关系;
更新模块,用于在所述至少一个第二展示页面中查找具有所述第一内容单元的标识信息的第二内容单元,根据所述第一内容单元的更新信息对所述第二内容单元进行更新。
在一种可能的实施方式中,所述装置还包括生成模块,用于:
获取展示页面的属性信息;所述展示页面的属性信息包括所述展示页面中包括的至少一个内容单元的标识信息,以及所述展示页面的标识信息;
根据每个所述展示页面的属性信息,建立内容单元与至少一个展示页面的关联关系,生成内容单元对应的关联关系列表。
在一种可能的实施方式中,所述展示页面的标识信息包括所述展示页面的场景标识;所述生成模块还用于:
在内容单元关联的至少一个展示页面中,基于各所述展示页面的场景标识、以及预先建立的场景关联关系列表,确定各所述展示页面的关联关系。
在一种可能的实施方式中,所述确定模块具体用于:
将所述第一内容单元的关联关系表中指示的与所述第一内容单元存在关联关系的展示页面作为待选展示页面;
基于所述第一展示页面的场景标识以及各所述待选展示页面的关联关系,从所述待选展示页面中筛选出至少一个第二展示页面。
在一种可能的实施方式中,所述确定模块在将所述第一内容单元的关联关系表中指示的与所述第一内容单元存在关联关系的展示页面作为待选展示页面时,具体用于:
根据所述第一内容单元的更新信息的类型从所述第一内容单元的关联关系表中查找所述待选展示页面。
在一种可能的实施方式中,所述更新模块在根据所述第一内容单元的更新信息对所述第二内容单元进行更新时,具体用于:
若所述第一内容单元的更新信息为针对所述第一内容单元的删除信息,则将所述第二内容单元从所述第二展示页面中删除;
在所述第二展示页面中不存在内容单元时,则将所述第二展示页面删除。
在一种可能的实施方式中,所述更新模块在将所述第二内容单元从所述第二展示页面中删除后,还用于:
将所述第一内容单元的关联关系列表中,所述第二展示页面与所述第一内容单元的关联关系删除。
在一种可能的实施方式中,所述生成模块还用于:
基于展示页面中包括的内容单元,生成展示页面的关联关系列表;
将所述展示页面的关联关系列表与内容单元的关联关系列表存储在数据仓库中。
第三方面,本公开实施例还提供一种计算机设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤。
第四方面,本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤。
关于上述页面内容更新装置、电子设备、及计算机可读存储介质的效果描述参见上述页面内容更新方法的说明,这里不再赘述。
本公开实施例提供的页面内容更新的方法及装置,首先响应于第一展示页面中第一内容单元的更新,获取所述第一内容单元的属性信息,所述属性信息包括所述第一内容单元的标识信息和所述第一内容单元的更新信息;然后,根据所述第一内容单元的标识信息查找所述第一内容单元的关联关系表;其次,基于所述第一内容单元的关联关系列表,确定待更新的至少一个第二展示页面;其中,所述关联关系列表中包括内容单元与具有所述内容单元的至少一个展示页面之间的关联关系;最后,在所述至少一个第二展示页面中查找具有所述第一内容单元的标识信息的第二内容单元,根据所述第一内容单元的更新信息对所述第二内容单元进行更新。
本公开能够在检测到第一展示页面中的第一内容单元的更新后,根据第一内容单元对应的关联关系表,确定待更新的第二展示页面,并利用第一内容单元的更新信息对第二展示页面中具有第一内容单元的标识信息的第二内容单元更新,这样,只对与第一展示页面之间存在关联关系的第二展示页面进行更新,不需要将第一内容单元的更新广播给全部的页面,能够降低对展示页面的内容单元更新的数据传输量,不需要更新的展示页面不会进行是否更新的判断逻辑,进而减少计算资源消耗并提高更新的效率。
为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
经研究发现,在应用程序的不同展示页面中,可能存在同一个内容单元,比如,在动态列表中有一用户发布的视频,该视频也存在在用户的个人主页中,用户在个人主页这一页面中对视频进行了操作,引起了该视频的展示数据发生变化,在动态列表中这一视频的展示数据同样应当发生对应的变化。然而,由于不同页面之间采用是独立的系统架构,需要发生操作的页面主动将发生变化的数据通知其他包括该内容单元的页面,但由于发生操作的展示页面并不知道需要通知哪些展示页面,只能将发生变化的展示数据以广播的形式,发送给所有其他的展示页面,其他展示页面再根据自身需求确定是否接收数据并进行展示页面内容更新,使用这种方式,当多个页面之间存在需要同步的内容单元的数据时,只能针对多个页面分别进行展示数据的缓存及加载更新,处理效率较低,且进行了很多不必要的数据传输,不能达到高效、快速的处理效果。
基于上述研究,本公开提供了一种页面内容更新方法,能够在检测到第一展示页面中的第一内容单元的更新后,根据第一内容单元对应的关联关系表,确定待更新的第二展示页面,并利用第一内容单元的更新信息对第二展示页面中具有第一内容单元的标识信息的第二内容单元更新,这样,只对与第一展示页面之间存在关联关系的第二展示页面进行更新,不需要将第一内容单元的更新广播给全部的页面,能够降低对展示页面的内容单元更新的数据传输量,不需要更新的展示页面不会进行是否更新的判断逻辑,进而减少计算资源消耗并提高更新的效率。
针对以上方案所存在的缺陷,均是发明人在经过实践并仔细研究后得出的结果,因此,上述问题的发现过程以及下文中本公开针对上述问题所提出的解决方案,都应该是发明人在本公开过程中对本公开做出的贡献。
下面将结合本公开中附图,对本公开中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
为便于对本实施例进行理解,首先对本公开实施例所公开的一种页面内容更新方法进行详细介绍,本公开实施例所提供的页面内容更新方法的执行主体一般为具有一定计算能力的计算机设备,该计算机设备例如包括:终端设备或服务器或其它处理设备,终端设备可以为用户设备(User Equipment,UE)、移动设备、用户终端、终端、蜂窝电话、无绳电话、个人数字处理(Personal Digital Assistant,PDA)、手持设备、计算设备、车载设备、可穿戴设备等。在一些可能的实现方式中,该页面内容更新方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。
下面介绍本公开的应用场景,本公开实施例所提供的页面内容更新方法可以应用于客户端中用于为展示页面提供展示数据的数据管理层,客户端可以运行于本公开实施例的执行主体上,客户端可以用于显示多个展示页面,并为每个展示页面分别提供页面加载层,多个页面加载层能够从数据管理层中获取展示页面中内容单元对应的展示数据,并通过渲染的方式生成展示页面,每个展示页面中可以包括至少一个内容单元,每个内容单元对应一组展示数据,不同的展示页面中可能包含相同的内容单元。数据管理层可以提供一个数据仓库,在数据仓库中可以存储每个内容单元对应的展示数据和内容单元的关联关系列表。
本公开实施例所提供的数据仓库是被所有页面加载层共用的,每个页面加载层都能够从数据仓库中获取到对应的内容单元的展示数据,数据仓库中存储的展示数据可以是以内容单元为单位的,而不是以展示页面为单位的。
示例性的,在数据仓库中,可以为每个展示页面和每个内容单元赋予标识信息。展示页面的标识信息可以由场景标识、所属用户标识及序号标识等信息组成;内容单元的标识信息可以为内容单元的唯一身份标识,在不同的展示页面中,可能存在标识信息相同的内容单元,标识信息相同的内容单元表示两个内容单元的内容主体为同一对象,比如,在视频应用程序中,个人收藏页和主页分别包含一视频的内容单元,两个内容单元的内容主体为同一个视频,则两个内容单元的标识信息是相同的,且两个内容单元中的展示数据是一致的。
数据仓库中能够存储内容单元的相关数据,示例性的,数据仓库可以将内容单元抽象为一个单元cell,在cell中,可以存储该内容单元的类型信息、标识信息、展示数据以及关联关系列表。其中,类型信息能够表征内容单元属于的类型,可以用于内容单元的分类检索,标识信息为内容单元在全局中的唯一标识,展示数据为内容单元在展示页面中需要展示的数据,关联关系列表中包括有内容单元与具有所述内容单元的至少一个展示页面之间的关联关系。
下面以执行主体为终端设备为例对本公开实施例提供的页面内容更新方法加以说明。
参见图1所示,为本公开实施例提供的页面内容更新方法的流程图,所述方法包括步骤S101~S104,其中:
S101:响应于第一展示页面中第一内容单元的更新,获取所述第一内容单元的属性信息,所述属性信息包括所述第一内容单元的标识信息和所述第一内容单元的更新信息。
该步骤中,在第一展示页面中第一内容单元发生更新后,数据管理层可以获取第一内容单元的属性信息,该属性信息可以从服务器获取,也可以从第一页面对应的页面加载层获取。其中,属性信息可以包括第一内容单元的标识信息以及第一内容单元的更新信息,更新信息可以为对第一内容单元的展示数据的更新。
其中,展示页面可以是应用程序中的页面,比如个人主页、收藏页面、动态页面等;内容单元是展示页面中需要展示的内容,比如,个人主页中的内容单元可以包括个人头像、个人资料、关注人数、粉丝人数等,收藏页面中的内容单元可以包括多个收藏的视频,动态页面中的内容单元可以包括关注人发布的动态信息等。
在客户端首次进行展示页面的展示时,可以获取展示页面的属性信息和每个展示页面中每个内容单元的展示数据,展示页面的属性信息可以包括展示页面中包括的至少一个内容单元的标识信息,以及展示页面的标识信息,数据管理层可以为展示页面中每个内容单元在数据仓库中建立对应的cell。
在获取到第一内容单元的属性信息后,可以基于第一内容单元的更新信息,对数据仓库中第一内容单元对应的cell进行更新。
这里,展示页面的更新,可以是用户对展示页面的互动操作导致的,如用户对展示页面中的视频进行收藏、点赞、评论等操作,也可以是与服务器进行数据同步导致的。
S102:根据所述第一内容单元的标识信息查找所述第一内容单元的关联关系表。
该步骤中,可以在数据管理层的数据仓库中,查找具有第一内容单元的标识信息的关联关系表,该关联关系表可以存储在数据仓库的第一内容单元对应的cell当中,关联关系列表中包括内容单元与具有所述内容单元的至少一个展示页面之间的关联关系。
S103:基于所述第一内容单元的关联关系列表,确定待更新的至少一个第二展示页面。
该步骤中,数据管理层可以基于第一内容单元的关联关系列表中指示的展示页面,确定待更新的至少一个第二展示页面,示例性的,可以直接将关联关系列表中指示的、除第一展示页面之外的展示页面作为第二展示页面,或根据第一展示页面的标识信息中的场景标识,从关联关系列表中指示的展示页面中筛选出至少一个第二展示页面。
S104:在所述至少一个第二展示页面中查找具有所述第一内容单元的标识信息的第二内容单元,根据所述第一内容单元的更新信息对所述第二内容单元进行更新。
该步骤中,在确定第二展示页面之后,可以在第二展示页面中查找具有第一内容单元的标识信息的第二内容单元,具有相同标识信息的内容单元具有相同的内容主体,因此,在第一内容单元发生更新的情况下,第二内容单元也需要进行更新。
在查找到第二内容单元后,数据管理层可以向第二展示页面的页面加载层发送更新指令,第二展示页面的页面加载层在接收到更新指令后,可以从数据仓库中第一内容单元对应的cell中获取第一内容单元的的更新的展示数据,并利用更新的展示数据进行页面渲染,将第二内容单元更新。
本公开提供的页面内容更新方法,能够在检测到第一展示页面中的第一内容单元的更新后,根据第一内容单元对应的关联关系表,确定待更新的第二展示页面,并利用第一内容单元的更新信息对第二展示页面中具有第一内容单元的标识信息的第二内容单元更新,这样,只对与第一展示页面之间存在关联关系的第二展示页面进行更新,不需要将第一内容单元的更新广播给全部的页面,能够降低对展示页面的内容单元更新的数据传输量,不需要更新的展示页面不会进行是否更新的判断逻辑,进而减少计算资源消耗并提高更新的效率。
在一种可能的实施方式中,所述方法还包括:
获取展示页面的属性信息;所述展示页面的属性信息包括所述展示页面中包括的至少一个内容单元的标识信息,以及所述展示页面的标识信息;
根据每个所述展示页面的属性信息,建立内容单元与至少一个展示页面的关联关系,生成内容单元对应的关联关系列表。
该步骤中,数据管理层还可以获取展示页面的属性信息,展示页面额属性信息包括该展示页面中包括的至少一个内容单元的标识信息,以及该展示页面的标识信息。
具体的,数据管理层可以将从服务器获取到的展示页面的属性信息存储至数据仓库中,并在需要时从数据仓库中提取出来。
在获取展示页面的属性信息之后,可以对展示页面的属性信息中含有的内容单元的标识信息进行遍历,确定每个内容单元的标识信息对应的至少一个展示页面,得到内容单元与至少一个展示页面的关联关系,生成内容单元对应的关联关系列表。
在一种可能的实施方式中,所述展示页面的标识信息包括所述展示页面的场景标识;所述方法还包括:
在内容单元关联的至少一个展示页面中,基于各所述展示页面的场景标识、以及预先建立的场景关联关系列表,确定各所述展示页面的关联关系。
该步骤中,预先建立的场景关联关系列表中可以包含有场景标识之间的对应关系,可以基于场景关联关系列表中场景标识之间的对应关系,建立展示页面的关联关系,示例性的,先确定展示页面的场景标识,再基于场景关联关系列表确定与该场景标识具有关联关系的场景标识集合,并建立展示页面与场景标识集合之间的关联关系,得到展示页面的关联关系。
在一种可能的实施方式中,所述基于所述第一内容单元的关联关系列表,确定待更新的至少一个第二展示页面,包括:
将所述第一内容单元的关联关系表中指示的与所述第一内容单元存在关联关系的展示页面作为待选展示页面;
基于所述第一展示页面的场景标识以及各所述待选展示页面的关联关系,从所述待选展示页面中筛选出至少一个第二展示页面。
该步骤中,在查找到第一内容单元的关联关系列表后,可以将关联关系列表中记录的与第一内容单元存在关联关系的展示页面作为待选展示页面,再根据待选展示页面的关联关系,确定与待选展示页面具有关联关系的场景标识,若与待选展示页面具有关联关系的场景标识中存在第一展示页面的场景标识,则将该待选展示页面作为第二展示页面。
在一种可能的实施方式中,所述将所述第一内容单元的关联关系表中指示的与所述第一内容单元存在关联关系的展示页面作为待选展示页面,包括:
根据所述第一内容单元的更新信息的类型从所述第一内容单元的关联关系表中查找所述待选展示页面。
该步骤中,由于第一内容单元在页面中可能展示的并不是全部的信息,比如,一视频在用户的个人主页当中仅展示视频的评论数量、点赞数量、视频内容本身,并不会展示出评论的具体内容,当进入该视频的页面后,则可以显示出评论的具体内容,因此,当第一内容单元发生更新后,并不是每个包含第一内容单元的展示页面都需要进行更新,因此,可以通过第一内容单元的更新信息的类型,从第一内容单元的关联关系表中查找所述待选展示页面,将关联关系表中,与该更新信息的类型对应的展示页面作为待选展示页面。具体的,可以确定关联关系列表中的展示页面所展示的第一内容单元的信息的类型,是否包括更新信息的类型,若是,则可以将该展示页面作为待选展示页面。
在一种可能的实施方式中,所述根据所述第一内容单元的更新信息对所述第二内容单元进行更新,包括:
若所述第一内容单元的更新信息为针对所述第一内容单元的删除信息,则将所述第二内容单元从所述第二展示页面中删除;
在所述第二展示页面中不存在内容单元时,则将所述第二展示页面删除。
该步骤中,若第一内容单元的更新信息是针对第一内容单元的删除信息,则将第二内容单元从第二展示页面中删除,比如,若检测到目标用户对第一内容单元的视频进行了取消收藏操作,则第一内容单元的更新信息的类型可以是收藏,则与收藏对应的收藏页面为待选展示页面,而第一内容单元所在的第一展示页面的场景信息为个人主页,则将于个人主页对应的目标用户的收藏页面作为第二展示页面,由于第一内容单元的更新信息是取消收藏的更新信息,是针对所述第一内容单元的删除信息,则将第二内容单元从目标用户的收藏页面中删除。
进一步的,若第二展示页面中所有的内容单元已被删除,则可以将第二展示页面删除,以释放第二展示页面占用的资源。
在一种可能的实施方式中,将所述第二内容单元从所述第二展示页面中删除后,所述方法还包括:
将所述第一内容单元的关联关系列表中,所述第二展示页面与所述第一内容单元的关联关系删除。
该步骤中,在第二内容单元从第二展示页面中删除后,由于第二展示页面中不再包含具有第一内容单元的标识信息的内容单元,需要将第二展示页面与第一那内容单元的关联关系从第一内容单元的关联关系列表中删除。
在一种可能的实施方式中,所述方法还包括:
基于展示页面中包括的内容单元,生成展示页面的关联关系列表;
将所述展示页面的关联关系列表与内容单元的关联关系列表存储在数据仓库中。
该步骤中,除了内容单元的关联关系列表外,还可以生成展示页面的关联关系列表,当有内容单元发生更新时,可以利用展示页面的关联关系列表确定需要更新的展示页面,也可以利用内容单元的关联关系列表确定需要更新的展示页面。当展示页面的包含的内容单元发生变化时,还可以对展示页面的关联关系列表进行更新。
参见图2所示,为本公开实施例提供的另一种页面内容更新的流程图,以泛信息流业务为例,数据管理层能够提供列表服务以及卡片服务,其中,列表服务指展示页面的服务,卡片服务为内容单元的服务,在泛信息流业务中,展示页面被称为一个信息列表,展示页面中的内容单元被称为卡片。
列表服务可以提供的展示页面的关联关系列表,页面渲染层可以基于关联关系列表,从数据仓库中获取需要进行加载的内容单元的展示数据,或根据展示页面的关联关系列表进行展示数据的清除,比如,若展示页面的关联关系列表中,删除了一内容单元的关联关系,则可以将该内容单元的展示数据从展示页面中删除,通过列表服务,可以在数据管理层注册针对展示页面的监听,当展示页面的关联关系列表发生变化,或关联关系列表中的内容单元发生更新,则可以通知页面渲染层发起网络请求,对内存数据进行操作,从数据仓库中获取更新的数据。
相似的,卡片服务则可以提供内容单元的关联关系列表,并进行每个内容单元的监听,当检测到发生针对内容单元的互动操作后,可以通过卡片服务通知需要更新的展示页面的页面渲染层发起网络请求,对内存数据进行操作,从数据仓库中获取更新的数据。
内存缓存服务则指数据仓库,数据仓库是建立在内存缓存当中的,在内存中,可以按照两种形式来存储所有的卡片数据。第一种,是按照列表分类(展示页面)来存储,以列表的标识信息作为key,value是这个列表下的所有卡片(内容单元)的集合;第二种,是按照卡片类型来存储,以卡片的类型信息和标识信息作为key,value是这个卡片数据的弱引用。弱引用能够在客户端系统进行垃圾回收的时候,对于内存中不再需要使用的卡片数据进行回收,减少内存占用。
当多个页面渲染层使用同一个内容单元的数据是,可以采用“旧实例新数据”的方式为页面渲染层提供数据,及时页面渲染层使用的是旧的内容单元的实例,但其数据能够被更新,实现对展示页面的更新,由于只存在一个内容单元的实例,能够节省内存,且便于后续的数据更新。
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
基于同一发明构思,本公开实施例中还提供了与页面内容更新方法对应的页面内容更新装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述页面内容更新方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
参见图3所示,为本公开实施例提供的一种页面内容更新装置的示意图,所述装置包括获取模块310、查找模块320、确定模块330以及更新模块340,其中:
获取模块310,用于响应于第一展示页面中第一内容单元的更新,获取所述第一内容单元的属性信息,所述属性信息包括所述第一内容单元的标识信息和所述第一内容单元的更新信息;
查找模块320,用于根据所述第一内容单元的标识信息查找所述第一内容单元的关联关系表;
确定模块330,用于基于所述第一内容单元的关联关系列表,确定待更新的至少一个第二展示页面;其中,所述关联关系列表中包括内容单元与具有所述内容单元的至少一个展示页面之间的关联关系;
更新模块340,用于在所述至少一个第二展示页面中查找具有所述第一内容单元的标识信息的第二内容单元,根据所述第一内容单元的更新信息对所述第二内容单元进行更新。
本公开提供的页面内容更新装置,能够在检测到第一展示页面中的第一内容单元的更新后,根据第一内容单元对应的关联关系表,确定待更新的第二展示页面,并利用第一内容单元的更新信息对第二展示页面中具有第一内容单元的标识信息的第二内容单元更新,这样,只对与第一展示页面之间存在关联关系的第二展示页面进行更新,不需要将第一内容单元的更新广播给全部的页面,能够降低对展示页面的内容单元更新的数据传输量,不需要更新的展示页面不会进行是否更新的判断逻辑,进而减少计算资源消耗并提高更新的效率。
参见图4所示,为本公开实施例提供的另一种页面内容更新装置的示意图,所述装置包括获取模块410、查找模块420、确定模块430以及更新模块440、生成模块450,其中,所述生成模块450具体用于:
获取展示页面的属性信息;所述展示页面的属性信息包括所述展示页面中包括的至少一个内容单元的标识信息,以及所述展示页面的标识信息;
根据每个所述展示页面的属性信息,建立内容单元与至少一个展示页面的关联关系,生成内容单元对应的关联关系列表。
在一种可能的实施方式中,所述展示页面的标识信息包括所述展示页面的场景标识;所述生成模块450还用于:
在内容单元关联的至少一个展示页面中,基于各所述展示页面的场景标识、以及预先建立的场景关联关系列表,确定各所述展示页面的关联关系。
在一种可能的实施方式中,所述确定模块430具体用于:
将所述第一内容单元的关联关系表中指示的与所述第一内容单元存在关联关系的展示页面作为待选展示页面;
基于所述第一展示页面的场景标识以及各所述待选展示页面的关联关系,从所述待选展示页面中筛选出至少一个第二展示页面。
在一种可能的实施方式中,所述确定模块430在将所述第一内容单元的关联关系表中指示的与所述第一内容单元存在关联关系的展示页面作为待选展示页面时,具体用于:
根据所述第一内容单元的更新信息的类型从所述第一内容单元的关联关系表中查找所述待选展示页面。
在一种可能的实施方式中,所述更新模块440在根据所述第一内容单元的更新信息对所述第二内容单元进行更新时,具体用于:
若所述第一内容单元的更新信息为针对所述第一内容单元的删除信息,则将所述第二内容单元从所述第二展示页面中删除;
在所述第二展示页面中不存在内容单元时,则将所述第二展示页面删除。
在一种可能的实施方式中,所述更新模块440在将所述第二内容单元从所述第二展示页面中删除后,还用于:
将所述第一内容单元的关联关系列表中,所述第二展示页面与所述第一内容单元的关联关系删除。
在一种可能的实施方式中,所述生成模块450还用于:
基于展示页面中包括的内容单元,生成展示页面的关联关系列表;
将所述展示页面的关联关系列表与内容单元的关联关系列表存储在数据仓库中。
关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。
基于同一技术构思,本申请实施例还提供了一种计算机设备。参照图5所示,为本申请实施例提供的计算机设备500的结构示意图,包括处理器501、存储器502、和总线503。其中,存储器502用于存储执行指令,包括内存5021和外部存储器5022;这里的内存5021也称内存储器,用于暂时存放处理器501中的运算数据,以及与硬盘等外部存储器5022交换的数据,处理器501通过内存5021与外部存储器5022进行数据交换,当电子设备500运行时,处理器501与存储器502之间通过总线503通信,使得处理器501在执行以下指令:
响应于第一展示页面中第一内容单元的更新,获取所述第一内容单元的属性信息,所述属性信息包括所述第一内容单元的标识信息和所述第一内容单元的更新信息;
根据所述第一内容单元的标识信息查找所述第一内容单元的关联关系表;
基于所述第一内容单元的关联关系列表,确定待更新的至少一个第二展示页面;其中,所述关联关系列表中包括内容单元与具有所述内容单元的至少一个展示页面之间的关联关系;
在所述至少一个第二展示页面中查找具有所述第一内容单元的标识信息的第二内容单元,根据所述第一内容单元的更新信息对所述第二内容单元进行更新。
一种可能的实施方式中,处理器501还执行:
获取展示页面的属性信息;所述展示页面的属性信息包括所述展示页面中包括的至少一个内容单元的标识信息,以及所述展示页面的标识信息;
根据每个所述展示页面的属性信息,建立内容单元与至少一个展示页面的关联关系,生成内容单元对应的关联关系列表。
一种可能的实施方式中,处理器501执行的指令中,所述展示页面的标识信息包括所述展示页面的场景标识;所述方法还包括:
在内容单元关联的至少一个展示页面中,基于各所述展示页面的场景标识、以及预先建立的场景关联关系列表,确定各所述展示页面的关联关系。
一种可能的实施方式中,处理器501执行的指令中,所述基于所述第一内容单元的关联关系列表,确定待更新的至少一个第二展示页面,包括:
将所述第一内容单元的关联关系表中指示的与所述第一内容单元存在关联关系的展示页面作为待选展示页面;
基于所述第一展示页面的场景标识以及各所述待选展示页面的关联关系,从所述待选展示页面中筛选出至少一个第二展示页面。
一种可能的实施方式中,处理器501执行的指令中,所述将所述第一内容单元的关联关系表中指示的与所述第一内容单元存在关联关系的展示页面作为待选展示页面,包括:
根据所述第一内容单元的更新信息的类型从所述第一内容单元的关联关系表中查找所述待选展示页面。
一种可能的实施方式中,处理器501执行的指令中,所述根据所述第一内容单元的更新信息对所述第二内容单元进行更新,包括:
若所述第一内容单元的更新信息为针对所述第一内容单元的删除信息,则将所述第二内容单元从所述第二展示页面中删除;
在所述第二展示页面中不存在内容单元时,则将所述第二展示页面删除。
一种可能的实施方式中,处理器501执行的指令中,将所述第二内容单元从所述第二展示页面中删除后,所述方法还包括:
将所述第一内容单元的关联关系列表中,所述第二展示页面与所述第一内容单元的关联关系删除。
一种可能的实施方式中,处理器501执行的指令中,所述方法还包括:
基于展示页面中包括的内容单元,生成展示页面的关联关系列表;
将所述展示页面的关联关系列表与内容单元的关联关系列表存储在数据仓库中。
本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述的页面内容更新方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。
本公开实施例所提供的页面内容更新方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行上述方法实施例中所述的页面内容更新方法的步骤,具体可参见上述方法实施例,在此不再赘述。
本公开实施例还提供一种计算机程序,该计算机程序被处理器执行时实现前述实施例的任意一种方法。该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software DevelopmentKit,SDK)等等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。