基于分布式系统的页面展示方法、装置、设备及存储介质与流程

未命名 07-22 阅读:118 评论:0


1.本技术涉及互联网技术领域,尤其涉及一种基于分布式系统的页面展示方法、装置、设备、存储介质及计算机程序产品。


背景技术:

2.随着互联网技术的快速发展,越来越多的用户通过页面(比如网页)来浏览媒体信息(比如新闻、推广信息等)。相关技术中,通常预先执行页面代码并提前加载完成页面以达到页面预加载的目的,然后将加载完成的页面进行隐藏以在用户查看时展示。但是提前执行页面代码以加载完成页面并隐藏,不仅会导致内存和网络资源的浪费,还会引起页面展示过程的不稳定,增加页面展示所需的耗时。


技术实现要素:

3.本技术实施例提供一种基于分布式系统的页面展示方法、装置、设备、存储介质及计算机程序产品,能够提高内存和网络资源的利用率,保证页面展示过程的稳定性,提高页面展示速度。
4.本技术实施例的技术方案是这样实现的:
5.本技术实施例提供一种基于分布式系统的页面展示方法,其中,分布式系统包括:贡献者终端、使用者终端及管理服务端,方法包括:
6.针对终端待加载页面资源的目标页面,确定所述终端在所述分布式系统中的角色;
7.当针对所述目标页面,所述终端的角色为使用者终端时,依据所述管理服务端处所述目标页面的页面资源地址,对所述目标页面的页面资源进行预加载;
8.其中,所述页面资源地址,为所述贡献者终端在加载所述页面资源后上报至所述管理服务端;
9.当触发针对所述目标页面的页面展示指令时,基于预加载的所述页面资源展示所述目标页面。
10.本技术实施例还提供一种基于分布式系统的页面展示装置,其中,分布式系统包括:贡献者终端、使用者终端及管理服务端,装置包括:
11.确定模块,用于针对终端待加载页面资源的目标页面,确定所述终端在所述分布式系统中的角色;
12.预加载模块,用于当针对所述目标页面,所述终端的角色为使用者终端时,依据所述管理服务端处所述目标页面的页面资源地址,对所述目标页面的页面资源进行预加载;
13.其中,所述页面资源地址,为所述贡献者终端在加载所述页面资源后上报至所述管理服务端;
14.展示模块,用于当触发针对所述目标页面的页面展示指令时,基于预加载的所述页面资源展示所述目标页面。
15.上述方案中,所述确定模块,还用于发送针对所述页面资源地址的获取请求至所述管理服务端,并接收所述管理服务端基于所述获取请求返回的响应消息;当所述响应消息中不包括所述页面资源地址时,确定所述终端在所述分布式系统中的角色为所述贡献者终端;当所述响应消息中包括所述页面资源地址时,确定所述终端在所述分布式系统中的角色为所述使用者终端。
16.上述方案中,所述确定模块,还用于获取所述目标页面的终端展示次数;当所述终端展示次数低于次数阈值时,确定所述终端在所述分布式系统中的角色为所述贡献者终端;当所述终端展示次数不低于次数阈值时,确定所述终端在所述分布式系统中的角色为所述使用者终端。
17.上述方案中,所述分布式系统还包括:至少两个上报者终端;所述确定模块,还用于从所述管理服务端处获取所述目标页面归属于预加载页面的结果;当所述结果指示所述目标页面为预加载页面时,确定所述终端在所述分布式系统中的角色;其中,所述目标页面归属于预加载页面的结果,为所述管理服务端基于上报页面加载超时消息的上报者终端的数量所确定;其中,所述页面加载超时消息,用于指示相应上报者终端加载所述目标页面的页面资源的时长超过时长阈值。
18.上述方案中,所述确定模块,还用于当针对所述目标页面,所述终端的角色为上报者终端时,响应于针对所述目标页面的页面展示指令,加载所述目标页面的页面资源,并获取相应的加载时长;当所述加载时长超过时长阈值时,上报所述页面加载超时消息至所述管理服务端。
19.上述方案中,所述确定模块,还用于当针对所述目标页面,所述终端的角色为贡献者终端时,响应于针对所述目标页面的页面展示指令,加载所述目标页面的页面资源,并记录所述页面资源的页面资源地址;将所述目标页面的页面资源地址上报至所述管理服务端。
20.上述方案中,所述确定模块,还用于当所述页面资源地址为至少两个时,对所述至少两个页面资源地址进行拼接处理,得到所述目标页面对应的资源地址列表;将所述目标页面对应的资源地址列表上报至所述管理服务端。
21.上述方案中,所述分布式系统还包括:上报者终端;所述确定模块,还用于从所述管理服务端处获取所述目标页面归属于预加载页面的结果;当所述结果指示所述目标页面为预加载页面时,确定所述终端在所述分布式系统中的角色;其中,所述目标页面归属于预加载页面的结果,为所述管理服务端基于所述上报者终端上报的所述页面资源的数据大小所确定。
22.上述方案中,所述确定模块,还用于当针对所述目标页面,所述终端的角色为上报者终端时,响应于针对所述目标页面的页面展示指令,加载所述目标页面的页面资源,并获取所述页面资源的数据大小;将所述页面资源的数据大小上报至所述管理服务端。
23.上述方案中,所述展示模块,还用于获取针对所述页面资源的资源获取请求,所述资源获取请求基于所述目标页面的页面展示指令所生成;对所述资源获取请求进行拦截处理。
24.上述方案中,所述展示模块,还用于加载所述目标页面的页面结构;基于所述页面结构,填充预加载的所述页面资源,以展示所述目标页面。
25.上述方案中,所述展示模块,还用于确定在目标时长内所述页面展示指令是否被触发,得到相应的结果;当所述结果表征在目标时长内所述页面展示指令未被触发时,释放预加载的所述页面资源。
26.上述方案中,所述预加载模块,还用于确定预加载的所述页面资源的第一版本,并获取所述管理服务端处的所述页面资源的第二版本;当所述第二版本与所述第一版本不一致时,依据所述管理服务端处所述目标页面的页面资源地址,对所述第二版本的页面资源进行预加载,并清除预加载的所述第一版本的页面资源。
27.本技术实施例还提供一种电子设备,包括:
28.存储器,用于存储可执行指令;
29.处理器,用于执行所述存储器中存储的可执行指令时,实现本技术实施例提供的基于分布式系统的页面展示方法。
30.本技术实施例还提供一种计算机可读存储介质,存储有可执行指令,所述可执行指令被处理器执行时,实现本技术实施例提供的基于分布式系统的页面展示方法。
31.本技术实施例还提供一种计算机程序产品,包括计算机程序或指令,所述计算机程序或指令被处理器执行时,实现本技术实施例提供的基于分布式系统的页面展示方法。
32.本技术实施例具有以下有益效果:
33.应用本技术上述实施例,基于包括贡献者终端、使用者终端及管理服务端的分布式系统,通过分布式系统中的贡献者终端,在加载目标页面的页面资源后,将目标页面的页面资源地址上报至管理服务端;当针对终端待加载页面资源的目标页面,确定终端的角色为使用者终端时,终端依据管理服务端处的目标页面的页面资源地址,对目标页面的页面资源进行预加载,从而当触发针对目标页面的页面展示指令时,基于预加载的页面资源展示目标页面。如此,在进行页面预加载时,仅需加载页面的页面资源,在触发针对页面的页面展示指令时,才基于预加载的页面资源生成页面以进行展示,能够提高内存和网络资源的利用率,保证页面展示过程的稳定性,提高页面展示速度。
附图说明
34.图1是本技术实施例提供的基于分布式系统的页面展示系统100的架构示意图;
35.图2是本技术实施例提供的实施基于分布式系统的页面展示方法的电子设备500的结构示意图;
36.图3是本技术实施例提供的基于分布式系统的页面展示方法的流程示意图;
37.图4是本技术实施例提供的基于分布式系统的页面展示方法的流程示意图;
38.图5是本技术实施例提供的基于分布式系统的页面展示方法的流程示意图;
39.图6是本技术实施例提供的基于分布式系统的页面展示方法的流程示意图;
40.图7是本技术实施例提供的目标页面的页面结构的结构示意图;
41.图8是本技术实施例提供的基于分布式系统的页面展示方法的流程示意图;
42.图9是本技术实施例提供的基于分布式系统的页面展示方法的流程示意图;
43.图10是本技术实施例提供的目标页面的展示示意图。
具体实施方式
44.为了使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术作进一步地详细描述,所描述的实施例不应视为对本技术的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本技术保护的范围。
45.在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
46.在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本技术实施例能够以除了在这里图示或描述的以外的顺序实施。
47.除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本技术实施例的目的,不是旨在限制本技术。
48.对本技术实施例进行进一步详细说明之前,对本技术实施例中涉及的名词和术语进行说明,本技术实施例中涉及的名词和术语适用于如下的解释。
49.1)客户端,终端中运行的用于提供各种服务的应用程序,例如浏览器客户端、媒体信息客户端。
50.2)响应于,用于表示所执行的操作所依赖的条件或者状态,当满足所依赖的条件或状态时,所执行的一个或多个操作可以是实时的,也可以具有设定的延迟;在没有特别说明的情况下,所执行的多个操作不存在执行先后顺序的限制。
51.3)落地页:当潜在用户点击推广信息或者利用搜索引擎搜索后跳转显示给用户的网页,一般这个页面会显示和所点击推广信息或搜索结果链接相关的扩展内容,而且这个页面应该是针对某个关键字(或短语)做过搜索引擎优化的。
52.4)网络页面,即web页面,也称网页,是一个包含html标签的纯文本文件,可以存放在世界某个角落的某一台计算机中,是万维网中的一“页”,是超文本标记语言格式,通常用图像档来提供图画,可通过网页浏览器来阅读。
53.5)层叠样式表(cascading style sheets,css)文件,是一种用来表现html等文件样式的计算机语言,不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化。
54.6)javascript脚本文件,即js文件,用于web应用开发,能够为网页添加各式各样的动态功能,javascript脚本是通过嵌入在html中来实现自身的功能的,网页、以及基于html5的客户端,交互逻辑都是由javascript驱动的。
55.7)超文本标记语言(hyper text markup language,html),是一种标记语言,包括一系列标签,通过这些标签可以将网络上的文档格式统一,使分散的internet资源连接为一个逻辑整体;html文本是由html命令组成的描述性文本,html命令可以说明文字,图形、动画、声音、表格、链接等。
56.本技术实施例提供一种基于分布式系统的页面展示方法、装置、设备、存储介质及计算机程序产品,能够提高内存和网络资源的利用率,保证页面展示过程的稳定性,提高页
面展示速度。
57.下面说明本技术实施例提供的基于分布式系统的页面展示方法的实施场景。参见图1,图1是本技术实施例提供的基于分布式系统的页面展示系统100的架构示意图,在本技术实施例中,分布式系统包括贡献者终端、使用者终端及管理服务端。为实现支撑一个示例性应用,终端(示例性示出了终端400-1和终端400-2)通过网络300连接管理服务端200,网络300可以是广域网或者局域网,又或者是二者的组合,使用无线或有线链路实现数据传输。在实际应用中,终端(示例性示出了终端400-1和终端400-2)上可以设置有客户端,比如浏览器客户端、媒体信息客户端(如新闻客户端),当终端接收到针对客户端的运行指令时,可通过运行客户端展示目标页面,而在展示目标页面的过程中,需要终端加载目标页面的页面资源,因此,目标页面也可记为终端待加载页面资源的目标页面。
58.在一些实施例中,针对终端待加载页面资源的目标页面,可以确定终端在分布式系统中的角色。这里,确定终端400-1在分布式系统中的角色为贡献者终端,确定终端400-2在分布式系统中的角色为使用者终端。当在终端400-1触发针对目标页面的页面展示指令时,终端400-1在线加载目标页面的页面资源,并基于在线加载的页面资源展示目标页面;同时,终端400-1在页面资源加载后,将页面资源的页面资源地址上报至管理服务端200;
59.基于此,终端400-2针对终端待加载页面资源的目标页面,发送目标页面的页面资源地址的获取请求至管理服务端200;管理服务端200接收并响应于目标页面的页面资源地址的获取请求,返回目标页面的页面资源地址至终端400-2;终端400-2接收到目标页面的页面资源地址,并依据目标页面的页面资源地址,对目标页面的页面资源进行预加载;当触发针对目标页面的页面展示指令时,基于预加载的页面资源展示目标页面。
60.在一些实施例中,本技术实施例提供的基于分布式系统的页面展示方法可以由各种电子设备实施,例如,可以由终端单独实施,也可以由服务器单独实施,也可以由终端和服务器协同实施。例如终端独自执行本技术实施例提供的基于分布式系统的页面展示方法,或者,终端和服务器协同执行本技术实施例提供的基于分布式系统的页面展示方法。
61.在一些实施例中,本技术实施例提供的实施基于分布式系统的页面展示的电子设备可以是各种类型的终端设备或服务器,其中,服务器(例如服务器200)可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务的云服务器。终端(例如终端400)可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能语音交互设备(例如智能音箱)、智能家电(例如智能电视)、智能手表、车载终端等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本技术实施例对此不做限制。本技术实施例可应用于各种场景,包括但不限于云技术、人工智能、智慧交通、辅助驾驶等。
62.在一些实施例中,终端或服务器可以通过运行计算机程序来实现本技术实施例提供的基于分布式系统的页面展示方法,举例来说,计算机程序可以是操作系统中的原生程序或软件模块;可以是本地(native)应用程序(app,app lication),即需要在操作系统中安装才能运行的程序;也可以是小程序,即只需要下载到浏览器环境中就可以运行的程序;还可以是能够嵌入至任意app中的小程序。总而言之,上述计算机程序可以是任意形式的应用程序、模块或插件。
63.在一些实施例中,多个服务器可组成为一区块链,而服务器为区块链上的节点,区块链中的每个节点之间可以存在信息连接,节点之间可以通过上述信息连接进行信息传输。其中,本技术实施例提供的基于分布式系统的页面展示方法所相关的数据(例如目标页面的页面资源)可保存于区块链上。
64.下面说明本技术实施例提供的实施基于分布式系统的页面展示方法的电子设备。参见图2,图2是本技术实施例提供的实施基于分布式系统的页面展示方法的电子设备500的结构示意图。以电子设备500为图1所示的终端为例,本技术实施例提供的实施基于分布式系统的页面展示方法的电子设备500包括:至少一个处理器510、存储器550、至少一个网络接口520和用户接口530。电子设备500中的各个组件通过总线系统540耦合在一起。可理解,总线系统540用于实现这些组件之间的连接通信。总线系统540除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为总线系统540。
65.处理器510可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(dsp,digital signal processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
66.用户接口530包括使得能够呈现媒体内容的一个或多个输出装置531,包括一个或多个扬声器和/或一个或多个视觉显示屏。用户接口530还包括一个或多个输入装置532,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。
67.存储器550可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器550可选地包括在物理位置上远离处理器510的一个或多个存储设备。
68.存储器550包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(rom,read only memory),易失性存储器可以是随机存取存储器(ram,random access memory)。本技术实施例描述的存储器550旨在包括任意适合类型的存储器。
69.在一些实施例中,存储器550能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
70.操作系统551,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
71.网络通信模块552,用于经由一个或多个(有线或无线)网络接口520到达其他计算设备,示例性的网络接口520包括:蓝牙、无线相容性认证(wifi)、和通用串行总线(usb,universal serial bus)等;
72.呈现模块553,用于经由一个或多个与用户接口530相关联的输出装置531(例如,显示屏、扬声器等)使得能够呈现信息(例如,用于操作外围设备和显示内容和信息的用户接口);
73.输入处理模块554,用于对一个或多个来自一个或多个输入装置532之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。
74.在一些实施例中,本技术实施例提供的基于分布式系统的页面展示装置可以采用软件方式实现,图2示出了存储在存储器550中的基于分布式系统的页面展示装置555,其可以是程序和插件等形式的软件,包括以下软件模块:确定模块5551、预加载模块5552和展示模块5553,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分,将在下文中说明各个模块的功能。
75.在另一些实施例中,本技术实施例提供的基于分布式系统的页面展示装置可以采用软硬件结合的方式实现,作为示例,本技术实施例提供的基于分布式系统的页面展示装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本技术实施例提供的基于分布式系统的页面展示方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(asic,application specific integrated circuit)、dsp、可编程逻辑器件(pld,programmable logic device)、复杂可编程逻辑器件(cpld,complex programmable logic device)、现场可编程门阵列(fpga,field-programmable gate array)或其他电子元件。
76.下面说明本技术实施例提供的基于分布式系统的页面展示方法。其中,分布式系统是由一组通过网络进行通信、为完成共同的任务而协调工作的计算节点组成的系统,本技术实施例提供的分布式系统包括:贡献者终端、使用者终端及管理服务端。这里,贡献者终端、使用者终端及管理服务端分别为分布式系统中的计算节点,用于共同协调工作以实现本技术实施例提供的基于分布式系统的页面展示方法。
77.在一些实施例中,本技术实施例提供的基于分布式系统的页面展示方法可以由各种电子设备实施,例如,可以由终端单独实施,也可以由服务器单独实施,也可以由终端和服务器协同实施。以终端实施为例,参见图3,图3是本技术实施例提供的基于分布式系统的页面展示方法的流程示意图,本技术实施例提供的基于分布式系统的页面展示方法包括:
78.步骤101:终端针对终端待加载页面资源的目标页面,确定终端在分布式系统中的角色。
79.这里,终端设置有应用客户端,比如浏览器客户端或者内嵌有浏览器内核的客户端,比如媒体信息客户端(如新闻客户端)、即时通信客户端等等。该目标页面可以为web页面,可以包括图像、文字、声音和视频等信息。在实际应用中,当终端接收到针对应用客户端的运行指令时,运行应用客户端,从而通过应用客户端展示目标页面。在实际实施时,终端展示目标页面需要加载目标页面的页面资源,该页面资源可以包括目标页面的文字资源、图像资源、声音资源、视频资源、css文件、js文件等等。
80.在本技术实施例中,加载目标页面的页面资源时,页面资源的加载方式包括在线加载和预加载。其中,在线加载是当用户触发针对目标页面的展示指令时,终端在线加载目标页面的页面资源;预加载是在用户未触发针对目标页面的展示指令时,针对待展示的目标页面,预加载目标页面的页面资源,以在用户触发针对目标页面的展示指令时,终端基于预加载的页面资源展示目标页面。在实际应用中,预加载可以提高目标页面的展示速度,避免在线加载时由于网络问题导致的页面展示延迟。
81.在本技术实施例中,当终端展示目标页面时,针对终端待加载页面资源的目标页面,可以确定终端在分布式系统中的角色。这里,分布式系统中包括贡献者终端、使用者终端及管理服务端。终端在分布式系统中的角色也即包括贡献者终端和使用者终端。即终端
在分布式系统中可以是贡献者终端,也可以是使用者终端,在实际实施时,当终端在分布式系统中是贡献者终端时,该使用者终端即为除该终端之外的其他终端;当终端在分布式系统中是使用者终端时,该贡献者终端可以为该终端,也可以为除该终端之外的其他终端;即在分布式系统中,终端针对目标页面,在同一时刻有且仅有一种角色,即终端在某一时刻是使用者终端,或者是贡献者终端。在实际应用中,针对不同的目标页面,终端可以为不同的角色,比如终端针对目标页面1为贡献者终端,终端针对目标页面2为使用者终端。
82.在本技术实施例中,贡献者终端在展示目标页面时,通过在线加载的方式加载目标页面的页面资源,同时,记录在线加载过程中页面资源的页面资源地址,并将页面资源地址上报至管理服务端;然后基于在线加载的目标页面的页面资源展示目标页面。基于此,使用者终端针对待展示的目标页面,可以依据管理服务端处页面资源的页面资源地址,预加载目标页面的页面资源,当需要(比如用户触发针对目标页面的展示指令)展示目标页面时,基于预加载的目标页面的页面资源展示目标页面,从而加快使用者终端展示目标页面的速度,提高用户浏览目标页面的体验。
83.这里,终端待加载页面资源的目标页面,比如终端运行客户端时待展示的目标页面,由于展示目标页面需要加载页面资源,因此该目标页面也可记为终端待加载页面资源的目标页面。由于终端在分布式系统中归属于不同的角色对应的页面资源的加载方式不同,因此终端针对终端待加载页面资源的目标页面,首先可以确定终端在分布式系统中的角色。
84.在一些实施例中,终端可通过如下方式确定终端在分布式系统中的角色:发送针对页面资源地址的获取请求至管理服务端,并接收管理服务端基于获取请求返回的响应消息;当响应消息中不包括页面资源地址时,确定终端在分布式系统中的角色为贡献者终端;当响应消息中包括页面资源地址时,确定终端在分布式系统中的角色为使用者终端。
85.参见图4,图4是本技术实施例提供的基于分布式系统的页面展示方法的流程示意图,包括:步骤201:终端发送针对页面资源地址的获取请求至管理服务端;步骤202:管理服务端接收到针对页面资源地址的获取请求,返回响应消息至终端;步骤203:终端接收到管理服务端基于获取请求返回的响应消息;步骤204:终端确定响应消息中是否包括页面资源地址,若是,执行步骤205,若否,执行步骤206;步骤205:确定终端在分布式系统中的角色为使用者终端;步骤206:确定终端在分布式系统中的角色为贡献者终端。
86.这里,终端在确定终端在分布式系统中的角色时,首先可以发送针对页面资源地址的获取请求至管理服务端;管理服务端接收到针对页面资源地址的获取请求,返回响应消息至终端;终端接收到管理服务端基于获取请求返回的响应消息,对响应消息进行解析,确定响应消息中是否包括页面资源地址;
87.当响应消息中不包括页面资源地址时,确定终端在分布式系统中的角色为贡献者终端,即管理服务端并未记录目标页面的页面资源地址,需要终端在线加载目标页面的页面资源并上报相应的页面资源地址至管理服务端;当响应消息中包括页面资源地址时,确定终端在分布式系统中的角色为使用者终端,即终端可以依据管理服务端处页面资源的页面资源地址,预加载目标页面的页面资源。
88.应用上述实施例,通过确定管理服务端是否存在页面资源地址,确定终端在分布式系统中的角色,既可以快速确定终端的角色,也可以在确定终端为使用者终端时直接获
取到目标页面的页面资源地址,提高了页面资源地址的获取效率,从而提高预加载的效率。
89.在一些实施例中,终端也可通过如下方式确定终端在分布式系统中的角色:获取目标页面的终端展示次数;当终端展示次数低于次数阈值时,确定终端在分布式系统中的角色为贡献者终端;当终端展示次数不低于次数阈值时,确定终端在分布式系统中的角色为使用者终端。
90.这里,终端在确定终端在分布式系统中的角色时,首先可以获取目标页面的终端展示次数,需要说明的是,终端展示次数中的终端为广义上的终端,不特指某个终端。然后确定该终端展示次数是否低于次数阈值,该次数阈值可以是预先设置的,比如1次、3次;该次数阈值也可以是动态变化的,比如根据目标页面的页面资源的数据大小确定,页面资源的数据大小越大,次数阈值越高,当然,该次数阈值也可以是设置上限值,即当次数阈值达到这个上限值时,即使页面资源的数据大小增加,该次数阈值也会维持上限值不变;该次数阈值还可以是以目标页面的历史终端展示次数和页面资源地址的上报情况数据(比如页面资源地址是否完整)为样本训练机器学习模型,然后基于预训练的机器学习模型预测得到的。
91.当确定终端展示次数低于次数阈值时,确定终端在分布式系统中的角色为贡献者终端,即需要终端在线加载目标页面的页面资源并上报相应的页面资源地址至管理服务端;当终端展示次数不低于次数阈值时,确定终端在分布式系统中的角色为使用者终端,需要终端在线加载目标页面的页面资源并上报相应的页面资源地址至管理服务端。
92.应用上述实施例,通过确定目标页面的终端展示次数是否低于次数阈值,确定终端在分布式系统中的角色,如此可以使得在展示终端展示次数低于次数阈值的目标页面时,终端均作为贡献者上报页面资源地址,以保证页面资源地址的完整性和可靠性,从而提高页面资源预加载的可靠性和完整性。
93.在一些实施例中,终端可通过如下方式上报目标页面的页面资源地址至管理服务端:当针对目标页面,终端的角色为贡献者终端时,响应于针对目标页面的页面展示指令,加载目标页面的页面资源,并记录页面资源的页面资源地址;将目标页面的页面资源地址上报至管理服务端。
94.这里,当针对目标页面,终端的角色为贡献者终端时,响应于针对目标页面的页面展示指令,加载目标页面的页面资源,同时记录页面资源的页面资源地址。在实际实施时,该页面资源可以存储目标页面对应的后台服务器中、或者数据库中,当终端加载目标页面的页面资源时,是发送页面资源的获取请求至后台服务器,后台服务器针对获取请求返回相应的页面资源的页面资源地址,终端则可以依据该页面资源地址加载页面资源,同时记录页面资源的页面资源地址。在实际应用中,该终端的角色为贡献者终端时,目标页面的页面资源的加载方式为在线加载。
95.终端在加载完成目标页面的页面资源后,将目标页面的页面资源地址上报至管理服务端。在一些实施例中,终端可通过如下方式将目标页面的页面资源地址上报至管理服务端:当页面资源地址为至少两个时,对至少两个页面资源地址进行拼接处理,得到目标页面对应的资源地址列表;将目标页面对应的资源地址列表上报至管理服务端。
96.在实际应用中,目标页面的页面资源可以包括多个页面资源,比如图片资源、文本资源、视频资源等,不同的页面资源对应不同的页面资源地址,因此,页面资源地址可能为
至少两个。当页面资源地址为至少两个时,则对至少两个页面资源地址进行拼接处理,得到目标页面对应的资源地址列表,然后将目标页面对应的资源地址列表上报至管理服务端。
97.在一些实施例中,该分布式系统还包括:至少两个上报者终端;基于此,终端可通过如下方式确定终端在分布式系统中的角色:从管理服务端处获取目标页面归属于预加载页面的结果;当结果指示目标页面为预加载页面时,确定终端在分布式系统中的角色;其中,该目标页面归属于预加载页面的结果,为管理服务端基于上报页面加载超时消息的上报者终端的数量所确定;其中,该页面加载超时消息,用于指示相应上报者终端加载目标页面的页面资源的加载时长超过时长阈值。
98.在一些实施例中,终端可通过如下方式上报页面加载超时消息至管理服务端:当针对目标页面,终端的角色为上报者终端时,响应于针对目标页面的页面展示指令,加载目标页面的页面资源,并获取相应的加载时长;当加载时长超过时长阈值时,上报页面加载超时消息至管理服务端。
99.这里,该分布式系统中还包括至少两个上报者终端,该上报者终端,用于获取自身在线加载目标页面的页面资源的时长(也即页面加载时长),并在加载目标页面的页面资源的加载时长超过时长阈值时,上报页面加载超时消息至管理服务端。在实际应用中,当针对目标页面,终端在分布式系统中的角色为上报者终端时,终端响应于针对目标页面的页面展示指令,加载目标页面的页面资源,同时获取相应的加载时长,当加载时长超过时长阈值时,上报页面加载超时消息至管理服务端。
100.管理服务端接收到上报者终端上报的页面加载超时信息后,确定上报页面加载超时消息的上报者终端的数量,当该数量超过数量阈值(比如50个)时,则将目标页面确定为预加载页面,该数量阈值可以是预先设置并固定的,也可以是动态调整的。此时,终端从管理服务端处获取到指示目标页面为预加载页面的结果,继续确定终端在分布式系统中的角色,即确定终端在分布式系统中的角色为使用者终端还是贡献者终端。
101.基于此,管理服务端基于上报页面加载超时消息的上报者终端的数量确定目标页面是否为预加载页面,并当上报页面加载超时消息的上报者终端的数量超过数量阈值时,将目标页面确定为预加载页面。因此,终端针对任一目标页面,可通过如下方式确定终端是否为上报者终端:从管理服务端获取至少一个预加载页面;当至少一个预加载页面中包括目标页面时,针对目标页面,确定终端在分布式系统中的角色不为上报者终端;当至少一个预加载页面中不包括目标页面时,针对目标页面,确定终端在分布式系统中的角色为上报者终端。
102.参见图5,图5是本技术实施例提供的基于分布式系统的页面展示方法的流程示意图,包括:步骤301:终端向管理服务端发送针对预加载页面列表的获取请求,该预加载页面列表,用于存储预加载页面;步骤302:管理服务端接收到针对预加载页面列表的获取请求,返回预加载页面列表至终端;步骤303:当预加载页面列表中不包括目标页面时,针对目标页面,确定终端在分布式系统中的角色为上报者终端;步骤304:响应于针对目标页面的页面展示指令,加载目标页面的页面资源,并获取相应的加载时长;步骤305:当加载时长超过时长阈值时,上报页面加载超时消息至管理服务端;步骤306:管理服务端接收到页面加载超时消息,并当上报页面加载超时消息的上报者终端的数量超过数量阈值时,确定目标页面为预加载页面;步骤307:将目标页面加入预加载页面列表中。
103.在一些实施例中,该分布式系统还包括:上报者终端;基于此,终端可通过如下方式确定终端在分布式系统中的角色:从管理服务端处获取目标页面归属于预加载页面的结果;当结果指示目标页面为预加载页面时,确定终端在分布式系统中的角色;其中,该目标页面归属于预加载页面的结果,为管理服务端基于上报者终端上报的页面资源的数据大小所确定。
104.在一些实施例中,终端可通过如下方式上报页面资源的数据大小至管理服务端:当针对目标页面,终端的角色为上报者终端时,响应于针对目标页面的页面展示指令,加载目标页面的页面资源,并获取页面资源的数据大小;将页面资源的数据大小上报至管理服务端。
105.这里,该分布式系统中还包括上报者终端,该上报者终端,用于将自身加载的页面资源的数据大小上报至管理服务端。在实际应用中,当针对目标页面,终端的角色为上报者终端时,响应于针对目标页面的页面展示指令,在线加载目标页面的页面资源,并获取页面资源的数据大小,然后将页面资源的数据大小上报至管理服务端。
106.管理服务端接收到上报者终端上报的页面资源的数据大小,当基于上报者终端上报的页面资源的数据大小超过数据大小阈值时,确定目标页面归属于预加载页面。此时,终端从管理服务端处获取到指示目标页面为预加载页面的结果,继续确定终端在分布式系统中的角色,即确定终端在分布式系统中的角色为使用者终端还是贡献者终端。
107.参见图6,图6是本技术实施例提供的基于分布式系统的页面展示方法的流程示意图,包括:步骤401:终端向管理服务端发送针对预加载页面列表的获取请求,该预加载页面列表,用于存储预加载页面;步骤402:管理服务端接收到针对预加载页面列表的获取请求,返回预加载页面列表至终端;步骤403:当预加载页面列表中不包括目标页面时,针对目标页面,确定终端在分布式系统中的角色为上报者终端;步骤404:响应于针对目标页面的页面展示指令,加载目标页面的页面资源,并获取页面资源的数据大小;步骤405:将页面资源的数据大小上报至管理服务端;步骤406:管理服务端接收到页面资源的数据大小,并当页面资源的数据大小超过数据大小阈值时,确定目标页面为预加载页面;步骤407:将目标页面加入预加载页面列表中。
108.步骤102:当针对目标页面,终端的角色为使用者终端时,依据管理服务端处目标页面的页面资源地址,对目标页面的页面资源进行预加载。
109.其中,页面资源地址,为贡献者终端在加载页面资源后上报至管理服务端。
110.这里,当针对目标页面,终端的角色为使用者终端时,则终端可以管理服务端处目标页面的页面资源地址,对目标页面的页面资源进行预加载。在实际实施时,终端可以发送针对页面资源地址的获取请求至管理服务端;管理服务端接收到针对页面资源地址的获取请求,返回目标页面的页面资源地址至终端;终端接收到返回的目标页面的页面资源地址,并依据目标页面的页面资源地址,对目标页面的页面资源进行预加载。其中,该页面资源地址,为贡献者终端在线加载目标页面的页面资源时,记录所加载的页面资源的页面资源地址,并在页面资源加载完成后上报至管理服务端的。
111.在实际实施时,该预加载的目标页面的页面资源可以存储于终端本地的存储区域内,当触发针对目标页面的展示指令时,则可以基于预加载的页面资源展示目标页面,提高目标页面的展示速度。
112.在一些实施例中,终端对目标页面的页面资源进行预加载之后,还可确定在目标时长内页面展示指令是否被触发,得到相应的结果;当结果表征在目标时长内页面展示指令未被触发时,释放预加载的页面资源。
113.这里,终端在对目标页面的页面资源进行预加载之后,还可以确定在目标时长内页面展示指令是否被触发,得到相应的结果。在实际实施时,可以实时地检测在目标时长内页面展示指令是否被触发,也可以是周期性地检测在目标时长内页面展示指令是否被触发。当结果表征在目标时长内页面展示指令未被触发时,则释放预加载的页面资源。在实际实施时,该目标时长可以是预先设置的,也可以是以目标页面对应的历史展示数据(比如多长时间内被触发页面展示指令)为样本训练机器学习模型,然后基于预训练的机器学习模型预测得到的。
114.应用上述实施例,通过确定在目标时长内页面展示指令是否被触发,并在确定在目标时长内页面展示指令未被触发时,释放预加载的页面资源,如此,能够减少内存的占用,提高存储空间的利用率。
115.在一些实施例中,终端对目标页面的页面资源进行预加载之后,还可确定预加载的页面资源的第一版本,并获取管理服务端处的页面资源的第二版本;当第二版本与第一版本不一致时,依据管理服务端处目标页面的页面资源地址,对第二版本的页面资源进行预加载,并清除预加载的第一版本的页面资源。
116.这里,终端在对目标页面的页面资源进行预加载之后,还可以确定预加载的页面资源的第一版本,并获取管理服务端处的页面资源的第二版本,在实际实施时,可以实时地或者周期性地获取管理服务端处的页面资源的第二版本;然后将第一版本和第二版本进行比较,得到比较结果;当比较结果表征第二版本与第一版本不一致时,则表示页面资源的版本进行了更新,此时则依据管理服务端处目标页面的页面资源地址,对第二版本的页面资源进行预加载,以保证预加载的目标页面的页面资源为最新版本。同时,还可以清除预加载的第一版本的页面资源,以减少内存的占用,提高存储空间的利用率。
117.应用上述实施例,通过获取管理服务端处的页面资源的第二版本、以及预加载的页面资源的第一版本,并比较第一版本和第二版本,确定页面资源是否发生了更新,并在更新后及时通过页面资源地址,对第二版本的页面资源进行预加载,以保证预加载的目标页面的页面资源为最新版本;同时清除预加载的第一版本的页面资源,减少内存的占用,提高存储空间的利用率。
118.步骤103:当触发针对目标页面的页面展示指令时,基于预加载的页面资源展示目标页面。
119.这里,终端在预加载完成目标页面的页面资源后,用户可以触发针对目标页面的页面展示指令,以基于页面展示指令触发目标页面的展示。此时,当触发针对目标页面的页面展示指令时,终端响应于页面展示指令,基于预加载的页面资源展示目标页面。
120.在一些实施例中,终端可获取针对页面资源的资源获取请求,该资源获取请求基于目标页面的页面展示指令所生成;对资源获取请求进行拦截处理。
121.这里,终端响应于页面展示指令展示目标页面时,实际情况下,当触发针对目标页面的页面展示指令时,终端会基于该目标页面的页面展示指令,生成针对页面资源的资源获取请求,以获取目标页面的页面资源。该资源获取请求为用于获取(比如从目标页面的后
台服务器获取)页面资源的网络请求。而由于终端已经预加载完成目标页面的页面资源,无需再次获取目标页面的页面资源,因此,终端可以在获取到针对页面资源的资源获取请求,对资源获取请求进行拦截处理。从而,可以基于预加载的页面资源展示目标页面。
122.应用上述实施例,当终端获取到基于针对目标页面的页面展示指令生成的资源获取请求时,对资源获取请求进行拦截处理,避免页面资源的串行加载。
123.在一些实施例中,终端可通过如下方式基于预加载的页面资源展示目标页面:加载目标页面的页面结构;基于页面结构,填充预加载的页面资源,以展示目标页面。
124.这里,终端在基于预加载的页面资源展示目标页面时,可以首先加载目标页面的页面结构,比如在线加载页面html结构;然后基于页面结构,填充预加载的页面资源,并完成目标页面的渲染,以展示目标页面。在实际实施时,页面结构可以包括标题部分、图片部分、视频部分、正文部分、导航链接部分等等。可以将页面资源中对应各部分的页面资源,填充到页面结构中对应的部分,以展示目标页面。
125.以页面结构为html结构为例,html结构可以包括:1)header部分:表示页面总的一个内容区块或者整个页面的标题;2)nav部分:表示页面中的导航链接部分;3)article部分:表示页面中的一块与上下文不相关的独立内容;4)section部分:表示页面中的一块内容区块,比如章节的页眉、页脚等,也可以标示文档的结构;5)aside部分:表示article元素内容之外的,和内容相关的辅助信息;6)footer部分:表示页面或者页面中的一块区域的页脚。
126.作为示例,参见图7,图7是本技术实施例提供的目标页面的页面结构的结构示意图。这里,页面结构包括:标题部分、图片部分、正文部分,如图7中a图所示;如此,可以将页面资源中对应各部分的页面资源,填充到页面结构中对应的部分,比如将页面资源中对应标题部分的页面资源“xx车展欢迎您”,填充至页面结构中的标题部分,将页面资源中对应图片部分的页面资源“图片1”,填充至页面结构中的图片部分,将页面资源中对应正文部分的页面资源“欢迎来到xx车展,这里有y型号、z型号等各种车
……”
,填充至页面结构中的正文部分,如图7中b图所示。
127.应用上述实施例,基于预加载的页面资源并在线加载页面结构以展示目标页面,和提前加载完成目标页面(包括目标页面的代码执行)并隐藏的方式相比,降低了内存和网络资源的浪费,避免引起客户端不稳定的问题。
128.参见图8,图8是本技术实施例提供的基于分布式系统的页面展示方法的流程示意图。这里,本技术实施例提供的基于分布式系统的页面展示方法包括:
129.步骤501:终端运行客户端,针对客户端中待加载页面资源的目标页面,向管理服务端发送针对预加载页面列表的获取请求。
130.这里,该预加载页面列表,用于存储预加载页面。
131.步骤502:管理服务端接收到针对预加载页面列表的获取请求,返回预加载页面列表至终端。
132.步骤503:终端接收预加载页面列表,并确定预加载页面列表中是否包括目标页面,若否,执行步骤504,若是,执行步骤507。
133.步骤504:针对目标页面,终端在分布式系统中的角色为上报者终端,响应于针对目标页面的页面展示指令,加载目标页面的页面资源,并获取相应的加载时长。
134.步骤505:当加载时长超过时长阈值时,终端上报页面加载超时消息至管理服务端。
135.步骤506:管理服务端接收到页面加载超时消息,并当上报页面加载超时消息的上报者终端的数量超过数量阈值时,确定目标页面为预加载页面并加入加入预加载页面列表中。
136.步骤507:终端发送针对页面资源地址的获取请求至管理服务端。
137.步骤508:管理服务端接收到针对页面资源地址的获取请求,返回响应消息至终端。
138.步骤509:终端接收到管理服务端基于获取请求返回的响应消息并确定响应消息中是否包括页面资源地址,若否,执行步骤510,若是,执行步骤513。
139.步骤510:针对目标页面,终端在分布式系统中的角色为贡献者终端,响应于针对目标页面的页面展示指令,加载目标页面的页面资源,并记录页面资源的页面资源地址。
140.步骤511:终端将目标页面的页面资源地址上报至管理服务端。
141.步骤512:管理服务端接收并存储目标页面的页面资源地址。
142.步骤513:针对目标页面,终端在分布式系统中的角色为使用者终端,依据目标页面的页面资源地址,对目标页面的页面资源进行预加载。
143.步骤514:当触发针对目标页面的页面展示指令时,终端基于预加载的页面资源展示目标页面。
144.应用本技术上述实施例,基于包括贡献者终端、使用者终端及管理服务端的分布式系统,通过分布式系统中的贡献者终端,在加载目标页面的页面资源后,将目标页面的页面资源地址上报至管理服务端;当针对终端待加载页面资源的目标页面,确定终端的角色为使用者终端时,终端依据管理服务端处的目标页面的页面资源地址,对目标页面的页面资源进行预加载,从而当触发针对目标页面的页面展示指令时,基于预加载的页面资源展示目标页面。如此,在进行页面预加载时,仅需加载页面的页面资源,在触发针对页面的页面展示指令时,才基于预加载的页面资源生成页面以进行展示,能够提高内存和网络资源的利用率,保证页面展示过程的稳定性,提高页面展示速度。
145.下面将说明本技术实施例在一个实际的应用场景中的示例性应用。下面以目标页面为落地页为例,对本技术实施例提供的基于分布式系统的页面展示方法进行说明。首先对本技术实施例涉及的名词进行解释,包括:
146.1)无监督预加载:本技术实施例提供的用于解决“确定某个落地页是否需要执行预加载”以及“预加载的落地页的页面资源地址的来源”的问题、基于分布式系统的预加载方案。
147.相关技术中,通常预先执行页面代码并提前加载完成页面以达到页面预加载的目的,然后将加载完成的页面进行隐藏以在用户查看时展示。不仅会导致页面点击数据的提前上报,对很多业务(比如推广业务)来说,页面点击数据上报的混乱会大大影响计费,还会导致内存和网络资源的浪费,甚至引起展示落地页的客户端的不稳定。
148.基于此,本技术实施例提供一种基于分布式系统的页面预加载方案,将客户端(或指客户端所处终端)组织成分布式系统,协同实现落地页的预加载,能够自动确定某个落地页是否需要执行预加载,以及自动确定需要执行预加载的落地页的页面资源地址。
149.在本技术实施例中,以提前预加载落地页的页面资源的方式实现落地页预加载,与隐藏提前打开webview并加载落地页的方式有本质区别,本技术实施例中提前加载的是落地页的页面资源(比如落地页中的图片资源和文件资源),并未涉及页面代码的执行,不会影响页面点击数据的上报,也不会导致内存和网络资源浪费的问题,更不会引起展示落地页的客户端的不稳定。
150.当落地页的页面资源预加载完成后,当用户触发针对该落地页的页面展示指令时,终端(客户端)在线加载页面结构(比如页面html结构),同时拦截webview的资源获取请求,将本地预加载完成的落地页的页面资源返回至webview,通过webview完成落地页的渲染和展示,能够提升页面展示速度,并且打开速度非常稳定。
151.在本技术实施例中,可通过如下方式1)确定落地页是否为需要执行预加载的页面,以尽可能减少设备资源浪费;以及2)确定落地页的页面资源的页面资源地址。接下来进行详细说明。
152.在本技术实施例中,将整个用户群体(即用户群体对应的终端)、以及管理服务端作为一个分布式系统。本技术实施例提供的基于分布式系统的页面展示方案包括三个阶段,分别是超时上报阶段、资源地址上报阶段、以及预加载阶段。同时,可将分布式系统中的终端划分为三类,分别是上报者终端、贡献者终端、以及使用者终端。接下来结合图9分别进行说明,图9是本技术实施例提供的基于分布式系统的页面展示方法的流程示意图,包括:
153.第一阶段为超时上报阶段,终端作为分布式系统中的上报者终端。此时,针对终端运行的客户端内的各个落地页,终端判断落地页的在线加载时长是否超过时长阈值(例如3秒),若是,则认为该落地页的页面加载超,触发上报操作,向管理服务端上报该落地页对应的页面加载超时消息,并携带该落地页的页面标识(例如可以是页面的链接、链接的md5、订单号、或者三者的组合等);需要说明的是,这里的页面加载超时指的是超出时长阈值,并非页面不能打开的超时,页面可能在等待较长时间后可以打开,也可能没法打开。
154.管理服务端以落地页的页面标识为key,对上报的页面加载超时消息进行计数,在实际实施时,对不同上报者终端的上报进行累计计数,同一个上报者终端的上报不做累计。当管理服务端确定某个目标落地页的页面标识对应的计数满足预加载触发条件,比如超过计数阈值t(例如50次)时,将该目标落地页确定为需要预加载的预加载页面。
155.第二阶段为资源地址上报阶段,终端作为分布式系统中的贡献者终端。此时,贡献者终端当在线加载目标落地页的过程中,记录目标落地页的页面资源地址,并将页面资源地址进行拼接处理,得到页面资源地址列表,并将页面资源地址列表上报至管理服务端。
156.第三阶段为预加载阶段,终端作为分布式系统中的使用者终端。对于目标落地页,后续打开该目标落地页的使用者终端,从管理服务端获取该目标落地页的页面资源地址列表,并依据页面资源地址列表中的页面资源地址进行页面资源的预加载。当触发针对该目标落地页的页面展示指令时,拦截webview中的资源请获取求,并提供本地预加载的页面资源进行页面展示。
157.上述三个阶段为单个落地页的处理过程。任意一个终端都可以兼具上述三种角色,对于从管理服务端拉取到的不同web页面的信息,执行不同角色的任务。因此,上述三个阶段中,终端需要在客户端启动时,执行一次请求至管理服务端,以获取包括至少一个预加载页面的落地页列表,从而基于落地页列表来确定针对目标落地页,该终端在分布式系统
中的角色。
158.对于落地页列表不包括目标落地页的情况,针对该目标落地页,终端在分布式系统中的角色为上报者终端;对于落地页列表包括目标落地页的情况,则从管理服务端获取页面资源地址列表,当页面资源地址列表为空时,则针对该目标落地页,终端在分布式系统中的角色为贡献者终端;当页面资源地址列表不为空时,则针对该目标落地页,终端在分布式系统中的角色为使用者终端。从而基于不同的角色,执行不同的处理,如上述三个阶段所公开的。
159.在实际应用中,上述涉及的参数可以调整,比如页面加载时长对应的时长阈值“3秒”可以根据需要修改,比如修改为5秒。管理服务端确定落地页是否为预加载页面的计数阈值的次数t也可以修改,比如修改为30次。当然,上述参数也可以是动态调整的。
160.参见图10,图10是本技术实施例提供的目标页面的展示示意图。这里,如图10中a图所示,终端接收到针对媒体信息流中媒体信息1的触发操作(如点击操作),呈现该媒体信息1对应的目标页面,即web落地页,如图10中b图所示。本技术实施例可以应用于客户端打开web落地页的场景上,应用范围广,提升落地页的打开速度和用户体验的同时,也提升了落地页的到达率,有利于提升推广信息的效果数据。
161.应用本技术上述实施例,通过分布式系统包括的上报者终端、贡献者终端、以及使用者终端,能够自动确定需要执行预加载的落地页、以及获取到需要执行预加载的落地页的页面资源的页面资源地址,并实现落地页的页面资源的预加载,能够明显提升落地页的打开速度,提高用户体验和页面到达率。
162.可以理解的是,在本技术实施例中,涉及到用户信息等相关的数据,当本技术实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
163.下面继续说明本技术实施例提供的基于分布式系统的页面展示装置555的实施为软件模块的示例性结构,在一些实施例中,如图2所示,存储在存储器550的基于分布式系统的页面展示装置555中的软件模块可以包括:
164.确定模块5551,用于针对终端待加载页面资源的目标页面,确定所述终端在所述分布式系统中的角色;
165.预加载模块5552,用于当针对所述目标页面,所述终端的角色为使用者终端时,依据所述管理服务端处所述目标页面的页面资源地址,对所述目标页面的页面资源进行预加载;
166.其中,所述页面资源地址,为所述贡献者终端在加载所述页面资源后上报至所述管理服务端;
167.展示模块5553,用于当触发针对所述目标页面的页面展示指令时,基于预加载的所述页面资源展示所述目标页面。
168.在一些实施例中,所述确定模块5551,还用于发送针对所述页面资源地址的获取请求至所述管理服务端,并接收所述管理服务端基于所述获取请求返回的响应消息;当所述响应消息中不包括所述页面资源地址时,确定所述终端在所述分布式系统中的角色为所述贡献者终端;当所述响应消息中包括所述页面资源地址时,确定所述终端在所述分布式系统中的角色为所述使用者终端。
169.在一些实施例中,所述确定模块5551,还用于获取所述目标页面的终端展示次数;当所述终端展示次数低于次数阈值时,确定所述终端在所述分布式系统中的角色为所述贡献者终端;当所述终端展示次数不低于次数阈值时,确定所述终端在所述分布式系统中的角色为所述使用者终端。
170.在一些实施例中,所述分布式系统还包括:至少两个上报者终端;所述确定模块5551,还用于从所述管理服务端处获取所述目标页面归属于预加载页面的结果;当所述结果指示所述目标页面为预加载页面时,确定所述终端在所述分布式系统中的角色;其中,所述目标页面归属于预加载页面的结果,为所述管理服务端基于上报页面加载超时消息的上报者终端的数量所确定;其中,所述页面加载超时消息,用于指示相应上报者终端加载所述目标页面的页面资源的时长超过时长阈值。
171.在一些实施例中,所述确定模块5551,还用于当针对所述目标页面,所述终端的角色为上报者终端时,响应于针对所述目标页面的页面展示指令,加载所述目标页面的页面资源,并获取相应的加载时长;当所述加载时长超过时长阈值时,上报所述页面加载超时消息至所述管理服务端。
172.在一些实施例中,所述确定模块5551,还用于当针对所述目标页面,所述终端的角色为贡献者终端时,响应于针对所述目标页面的页面展示指令,加载所述目标页面的页面资源,并记录所述页面资源的页面资源地址;将所述目标页面的页面资源地址上报至所述管理服务端。
173.在一些实施例中,所述确定模块5551,还用于当所述页面资源地址为至少两个时,对所述至少两个页面资源地址进行拼接处理,得到所述目标页面对应的资源地址列表;将所述目标页面对应的资源地址列表上报至所述管理服务端。
174.在一些实施例中,所述分布式系统还包括:上报者终端;所述确定模块5551,还用于从所述管理服务端处获取所述目标页面归属于预加载页面的结果;当所述结果指示所述目标页面为预加载页面时,确定所述终端在所述分布式系统中的角色;其中,所述目标页面归属于预加载页面的结果,为所述管理服务端基于所述上报者终端上报的所述页面资源的数据大小所确定。
175.在一些实施例中,所述确定模块5551,还用于当针对所述目标页面,所述终端的角色为上报者终端时,响应于针对所述目标页面的页面展示指令,加载所述目标页面的页面资源,并获取所述页面资源的数据大小;将所述页面资源的数据大小上报至所述管理服务端。
176.在一些实施例中,所述展示模块5553,还用于获取针对所述页面资源的资源获取请求,所述资源获取请求基于所述目标页面的页面展示指令所生成;对所述资源获取请求进行拦截处理。
177.在一些实施例中,所述展示模块5553,还用于加载所述目标页面的页面结构;基于所述页面结构,填充预加载的所述页面资源,以展示所述目标页面。
178.在一些实施例中,所述展示模块5553,还用于确定在目标时长内所述页面展示指令是否被触发,得到相应的结果;当所述结果表征在目标时长内所述页面展示指令未被触发时,释放预加载的所述页面资源。
179.在一些实施例中,所述预加载模块5552,还用于确定预加载的所述页面资源的第
一版本,并获取所述管理服务端处的所述页面资源的第二版本;当所述第二版本与所述第一版本不一致时,依据所述管理服务端处所述目标页面的页面资源地址,对所述第二版本的页面资源进行预加载,并清除预加载的所述第一版本的页面资源。
180.应用本技术上述实施例,基于包括贡献者终端、使用者终端及管理服务端的分布式系统,通过分布式系统中的贡献者终端,在加载目标页面的页面资源后,将目标页面的页面资源地址上报至管理服务端;当针对终端待加载页面资源的目标页面,确定终端的角色为使用者终端时,终端依据管理服务端处的目标页面的页面资源地址,对目标页面的页面资源进行预加载,从而当触发针对目标页面的页面展示指令时,基于预加载的页面资源展示目标页面。如此,在进行页面预加载时,仅需加载页面的页面资源,在触发针对页面的页面展示指令时,才基于预加载的页面资源生成页面以进行展示,能够提高内存和网络资源的利用率,保证页面展示过程的稳定性,提高页面展示速度。
181.本技术实施例还提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本技术实施例提供的基于分布式系统的页面展示方法。
182.本技术实施例还提供一种计算机可读存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本技术实施例提供的基于分布式系统的页面展示方法。
183.在一些实施例中,计算机可读存储介质可以是fram、rom、prom、ep rom、eeprom、闪存、磁表面存储器、光盘、或cd-rom等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
184.在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
185.作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(html,hyper text markup language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
186.作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
187.以上所述,仅为本技术的实施例而已,并非用于限定本技术的保护范围。凡在本技术的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本技术的保护范围之内。

技术特征:
1.一种基于分布式系统的页面展示方法,其特征在于,所述分布式系统包括:贡献者终端、使用者终端及管理服务端,所述方法包括:针对终端待加载页面资源的目标页面,确定所述终端在所述分布式系统中的角色;当针对所述目标页面,所述终端的角色为使用者终端时,依据所述管理服务端处所述目标页面的页面资源地址,对所述目标页面的页面资源进行预加载;其中,所述页面资源地址,为所述贡献者终端在加载所述页面资源后上报至所述管理服务端;当触发针对所述目标页面的页面展示指令时,基于预加载的所述页面资源展示所述目标页面。2.如权利要求1所述的方法,其特征在于,所述确定所述终端在所述分布式系统中的角色,包括:发送针对所述页面资源地址的获取请求至所述管理服务端,并接收所述管理服务端基于所述获取请求返回的响应消息;当所述响应消息中不包括所述页面资源地址时,确定所述终端在所述分布式系统中的角色为所述贡献者终端;当所述响应消息中包括所述页面资源地址时,确定所述终端在所述分布式系统中的角色为所述使用者终端。3.如权利要求1所述的方法,其特征在于,所述确定所述终端在所述分布式系统中的角色,包括:获取所述目标页面的终端展示次数;当所述终端展示次数低于次数阈值时,确定所述终端在所述分布式系统中的角色为所述贡献者终端;当所述终端展示次数不低于次数阈值时,确定所述终端在所述分布式系统中的角色为所述使用者终端。4.如权利要求1所述的方法,其特征在于,所述分布式系统还包括:至少两个上报者终端;所述确定所述终端在所述分布式系统中的角色,包括:从所述管理服务端处获取所述目标页面归属于预加载页面的结果;当所述结果指示所述目标页面为预加载页面时,确定所述终端在所述分布式系统中的角色;其中,所述目标页面归属于预加载页面的结果,为所述管理服务端基于上报页面加载超时消息的上报者终端的数量所确定;其中,所述页面加载超时消息,用于指示相应上报者终端加载所述目标页面的页面资源的时长超过时长阈值。5.如权利要求4所述的方法,其特征在于,所述方法还包括:当针对所述目标页面,所述终端的角色为上报者终端时,响应于针对所述目标页面的页面展示指令,加载所述目标页面的页面资源,并获取相应的加载时长;当所述加载时长超过时长阈值时,上报所述页面加载超时消息至所述管理服务端。6.如权利要求1所述的方法,其特征在于,所述方法还包括:当针对所述目标页面,所述终端的角色为贡献者终端时,响应于针对所述目标页面的
页面展示指令,加载所述目标页面的页面资源,并记录所述页面资源的页面资源地址;将所述目标页面的页面资源地址上报至所述管理服务端。7.如权利要求6所述的方法,其特征在于,所述将所述目标页面的页面资源地址上报至所述管理服务端,包括:当所述页面资源地址为至少两个时,对所述至少两个页面资源地址进行拼接处理,得到所述目标页面对应的资源地址列表;将所述目标页面对应的资源地址列表上报至所述管理服务端。8.如权利要求1所述的方法,其特征在于,所述分布式系统还包括:上报者终端;所述确定所述终端在所述分布式系统中的角色,包括:从所述管理服务端处获取所述目标页面归属于预加载页面的结果;当所述结果指示所述目标页面为预加载页面时,确定所述终端在所述分布式系统中的角色;其中,所述目标页面归属于预加载页面的结果,为所述管理服务端基于所述上报者终端上报的所述页面资源的数据大小所确定。9.如权利要求8所述的方法,其特征在于,所述方法还包括:当针对所述目标页面,所述终端的角色为上报者终端时,响应于针对所述目标页面的页面展示指令,加载所述目标页面的页面资源,并获取所述页面资源的数据大小;将所述页面资源的数据大小上报至所述管理服务端。10.如权利要求1所述的方法,其特征在于,所述方法还包括:获取针对所述页面资源的资源获取请求,所述资源获取请求基于所述目标页面的页面展示指令所生成;对所述资源获取请求进行拦截处理。11.如权利要求1所述的方法,其特征在于,所述基于预加载的所述页面资源展示所述目标页面,包括:加载所述目标页面的页面结构;基于所述页面结构,填充预加载的所述页面资源,以展示所述目标页面。12.如权利要求1所述的方法,其特征在于,所述对所述目标页面的页面资源进行预加载之后,所述方法还包括:确定在目标时长内所述页面展示指令是否被触发,得到相应的结果;当所述结果表征在目标时长内所述页面展示指令未被触发时,释放预加载的所述页面资源。13.如权利要求1所述的方法,其特征在于,所述对所述目标页面的页面资源进行预加载之后,所述方法还包括:确定预加载的所述页面资源的第一版本,并获取所述管理服务端处的所述页面资源的第二版本;当所述第二版本与所述第一版本不一致时,依据所述管理服务端处所述目标页面的页面资源地址,对所述第二版本的页面资源进行预加载,并清除预加载的所述第一版本的页面资源。14.一种基于分布式系统的页面展示装置,其特征在于,所述分布式系统包括:贡献者
终端、使用者终端及管理服务端,所述装置包括:确定模块,用于针对终端待加载页面资源的目标页面,确定所述终端在所述分布式系统中的角色;预加载模块,用于当针对所述目标页面,所述终端的角色为使用者终端时,依据所述管理服务端处所述目标页面的页面资源地址,对所述目标页面的页面资源进行预加载;其中,所述页面资源地址,为所述贡献者终端在加载所述页面资源后上报至所述管理服务端;展示模块,用于当触发针对所述目标页面的页面展示指令时,基于预加载的所述页面资源展示所述目标页面。15.一种电子设备,其特征在于,所述电子设备包括:存储器,用于存储可执行指令;处理器,用于执行所述存储器中存储的可执行指令时,实现权利要求1至13任一项所述的基于分布式系统的页面展示方法。16.一种计算机可读存储介质,存储有可执行指令,其特征在于,所述可执行指令被处理器执行时,实现权利要求1至13任一项所述的基于分布式系统的页面展示方法。17.一种计算机程序产品,包括计算机程序或指令,其特征在于,所述计算机程序或指令被处理器执行时,实现权利要求1至13任一项所述的基于分布式系统的页面展示方法。

技术总结
本申请提供了一种基于分布式系统的页面展示方法、装置、设备、存储介质及计算机程序产品;方法包括:针对终端待加载页面资源的目标页面,确定所述终端在所述分布式系统中的角色;当针对所述目标页面,所述终端的角色为使用者终端时,依据所述管理服务端处所述目标页面的页面资源地址,对所述目标页面的页面资源进行预加载;其中,所述页面资源地址,为所述贡献者终端在加载所述页面资源后上报至所述管理服务端;当触发针对所述目标页面的页面展示指令时,基于预加载的所述页面资源展示所述目标页面;通过本申请,能够提高内存和网络资源的利用率,保证页面展示过程的稳定性,提高页面展示速度。面展示速度。面展示速度。


技术研发人员:任春剑
受保护的技术使用者:腾讯科技(深圳)有限公司
技术研发日:2022.01.06
技术公布日:2023/7/20
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐