页面的渲染方法、计算机设备及计算机可读存储介质技术

技术编号:38723350 阅读:16 留言:0更新日期:2023-09-08 23:17
本申请公开了一种页面的渲染方法、计算机设备及计算机可读存储介质,方法包括:获取待渲染页面包含的目标组件;若预设缓存空间中缓存有目标组件的渲染结果,则从预设缓存空间中获取目标组件的渲染结果,其中,预设缓存空间缓存有至少一个预设组件的渲染结果;根据目标组件的渲染结果,生成待渲染页面的渲染结果。本申请实施例通过事先缓存组件的渲染结果,在需要渲染页面时,直接从缓存数据中提取相应组件的渲染结果,减少了渲染时的工作量,提高了渲染性能,相比于事先缓存整个页面,组件级缓存的命中率和利用率更高。存的命中率和利用率更高。存的命中率和利用率更高。

【技术实现步骤摘要】
页面的渲染方法、计算机设备及计算机可读存储介质


[0001]本申请涉及页面渲染
,具体涉及一种页面的渲染方法、计算机设备及计算机可读存储介质。

技术介绍

[0002]常用的页面渲染模式主要有SSR(Sever

Side Rendering,服务端渲染)、CSR(Client

Side Rendering,客户端渲染)等。当实际页面中的节点数较多,且包含较复杂的逻辑时,页面渲染的性能就会大幅度下降。
[0003]在对页面渲染进行性能优化时,可采用页面缓存策略,即事先对页面进行缓存,以便于在页面渲染时直接使用缓存数据。但事先缓存的为整个页面,缓存占用的存储空间大,且命中率较低,会导致已缓存内容的利用率过低。

技术实现思路

[0004]本申请实施例提供一种页面的渲染方法、计算机设备及计算机可读存储介质,旨在提高已缓存内容的利用率。
[0005]一方面,本申请提供一种页面的渲染方法,包括:
[0006]获取待渲染页面包含的目标组件;
[0007]若预设缓存空间中缓存有所述目标组件的渲染结果,则从所述预设缓存空间中获取所述目标组件的渲染结果,其中,所述预设缓存空间缓存有至少一个预设组件的渲染结果;
[0008]根据所述目标组件的渲染结果,生成所述待渲染页面的渲染结果。
[0009]在一些实施例中,所述获取待渲染页面包含的目标组件的步骤之前,还包括:
[0010]获取多个预设页面,其中,所述多个预设页面包括所述待渲染页面;
[0011]对各个所述预设页面进行组件化拆分,以确定各个所述预设页面包含的目标组件。
[0012]在一些实施例中,所述对各个所述预设页面进行组件化拆分,以确定各个所述预设页面包含的目标组件的步骤包括:
[0013]对各个所述预设页面进行组件化拆分,得到各个所述预设页面包含的组件;
[0014]获取各个所述预设页面包含的组件在所有所述预设页面中的复用次数;
[0015]根据所述复用次数,确定各个所述预设页面包含的组件中的目标组件。
[0016]在一些实施例中,所述根据所述复用次数,确定各个所述预设页面包含的组件中的目标组件的步骤包括:
[0017]检测各个所述预设页面包含的组件对应的所述复用次数是否大于预设阈值;
[0018]若所述预设页面包含的组件对应的所述复用次数大于所述预设阈值,则将所述预设页面包含的组件作为所述预设页面包含的目标组件。
[0019]在一些实施例中,所述获取待渲染页面包含的目标组件的步骤之后,还包括:
[0020]若所述预设缓存空间中未缓存有所述目标组件的渲染结果,则采用渲染器获取所述目标组件的渲染结果;
[0021]将所述目标组件的渲染结果作为所述预设组件的渲染结果,并缓存至所述预设缓存空间中。
[0022]在一些实施例中,所述将所述目标组件的渲染结果作为所述预设组件的渲染结果,并缓存至所述预设缓存空间中的步骤包括:
[0023]将所述目标组件的渲染结果作为所述预设组件的渲染结果,缓存至所述预设缓存空间中的双向链表的头部位置,其中,所述双向链表用于连接不同所述预设组件的渲染结果;
[0024]所述若预设缓存空间中缓存有所述目标组件的渲染结果,则从所述预设缓存空间中获取所述目标组件的渲染结果的步骤之后,还包括:
[0025]若所述目标组件的渲染结果在所述预设缓存空间中的存储位置不是所述双向链表的头部位置,将所述目标组件的渲染结果在所述预设缓存空间中的存储位置更改为所述双向链表的头部位置。
[0026]在一些实施例中,所述将所述目标组件的渲染结果作为所述预设组件的渲染结果,缓存至所述预设缓存空间中的双向链表的头部位置的步骤之前,还包括:
[0027]检测所述预设缓存空间的存储空间是否充足;
[0028]若所述预设缓存空间的存储空间充足,则执行所述将所述目标组件的渲染结果作为所述预设组件的渲染结果,缓存至所述预设缓存空间中的双向链表的头部位置的步骤。
[0029]在一些实施例中,所述检测所述预设缓存空间的存储空间是否充足的步骤之后,还包括:
[0030]若所述预设缓存空间的存储空间不充足,则删除所述双向链表的尾部位置存储的渲染结果;
[0031]返回执行所述检测所述预设缓存空间的存储空间是否充足的步骤。
[0032]另一方面,本申请实施例提供一种页面的渲染装置,所述页面的渲染装置包括:
[0033]获取模块,用于获取待渲染页面包含的目标组件;
[0034]所述获取模块,还用于若预设缓存空间中缓存有所述目标组件的渲染结果,则从所述预设缓存空间中获取所述目标组件的渲染结果,其中,所述预设缓存空间缓存有至少一个预设组件的渲染结果;
[0035]生成模块,用于根据所述目标组件的渲染结果,生成所述待渲染页面的渲染结果。
[0036]在一些实施例中,所述获取模块具体用于:
[0037]获取多个预设页面,其中,所述多个预设页面包括所述待渲染页面;
[0038]对各个所述预设页面进行组件化拆分,以确定各个所述预设页面包含的目标组件。
[0039]在一些实施例中,所述获取模块具体用于:
[0040]对各个所述预设页面进行组件化拆分,得到各个所述预设页面包含的组件;
[0041]获取各个所述预设页面包含的组件在所有所述预设页面中的复用次数;
[0042]根据所述复用次数,确定各个所述预设页面包含的组件中的目标组件。
[0043]在一些实施例中,所述获取模块具体用于:
[0044]检测各个所述预设页面包含的组件对应的所述复用次数是否大于预设阈值;
[0045]若所述预设页面包含的组件对应的所述复用次数大于所述预设阈值,则将所述预设页面包含的组件作为所述预设页面包含的目标组件。
[0046]在一些实施例中,所述获取模块具体用于:
[0047]若所述预设缓存空间中未缓存有所述目标组件的渲染结果,则采用渲染器获取所述目标组件的渲染结果;
[0048]将所述目标组件的渲染结果作为所述预设组件的渲染结果,并缓存至所述预设缓存空间中。
[0049]在一些实施例中,所述获取模块具体用于:
[0050]将所述目标组件的渲染结果作为所述预设组件的渲染结果,缓存至所述预设缓存空间中的双向链表的头部位置,其中,所述双向链表用于连接不同所述预设组件的渲染结果。
[0051]在一些实施例中,所述获取模块具体用于:
[0052]若所述目标组件的渲染结果在所述预设缓存空间中的存储位置不是所述双向链表的头部位置,将所述目标组件的渲染结果在所述预设缓存空间中的存储位置更改为所述双向链表的头部位置。
[0053]在一些实施例中,所述获取模块具体用于:
[0054]检测所述预设缓存空间的存储空间是否充足;
[005本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种页面的渲染方法,其特征在于,包括:获取待渲染页面包含的目标组件;若预设缓存空间中缓存有所述目标组件的渲染结果,则从所述预设缓存空间中获取所述目标组件的渲染结果,其中,所述预设缓存空间缓存有至少一个预设组件的渲染结果;根据所述目标组件的渲染结果,生成所述待渲染页面的渲染结果。2.如权利要求1所述的页面的渲染方法,其特征在于,所述获取待渲染页面包含的目标组件的步骤之前,还包括:获取多个预设页面,其中,所述多个预设页面包括所述待渲染页面;对各个所述预设页面进行组件化拆分,以确定各个所述预设页面包含的目标组件。3.如权利要求2所述的页面的渲染方法,其特征在于,所述对各个所述预设页面进行组件化拆分,以确定各个所述预设页面包含的目标组件的步骤包括:对各个所述预设页面进行组件化拆分,得到各个所述预设页面包含的组件;获取各个所述预设页面包含的组件在所有所述预设页面中的复用次数;根据所述复用次数,确定各个所述预设页面包含的组件中的目标组件。4.如权利要求3所述的页面的渲染方法,其特征在于,所述根据所述复用次数,确定各个所述预设页面包含的组件中的目标组件的步骤包括:检测各个所述预设页面包含的组件对应的所述复用次数是否大于预设阈值;若所述预设页面包含的组件对应的所述复用次数大于所述预设阈值,则将所述预设页面包含的组件作为所述预设页面包含的目标组件。5.如权利要求1所述的页面的渲染方法,其特征在于,所述获取待渲染页面包含的目标组件的步骤之后,还包括:若所述预设缓存空间中未缓存有所述目标组件的渲染结果,则采用渲染器获取所述目标组件的渲染结果;将所述目标组件的渲染结果作为所述预设组件的渲染结果,并缓存至所述预设缓存空间中。6.如权利要求5所述的页面的渲染方法,其特征在于,所述将所述目标组件的渲染结果作为所述预...

【专利技术属性】
技术研发人员:张美玲
申请(专利权)人:顺丰科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1