CN112905175B - 一种页面生成方法、装置及设备 - Google Patents
一种页面生成方法、装置及设备 Download PDFInfo
- Publication number
- CN112905175B CN112905175B CN202110170703.9A CN202110170703A CN112905175B CN 112905175 B CN112905175 B CN 112905175B CN 202110170703 A CN202110170703 A CN 202110170703A CN 112905175 B CN112905175 B CN 112905175B
- Authority
- CN
- China
- Prior art keywords
- page
- component
- cache
- data
- identifier
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 69
- 230000015654 memory Effects 0.000 claims description 22
- 238000003860 storage Methods 0.000 claims description 12
- 238000000605 extraction Methods 0.000 claims description 3
- 101150060512 SPATA6 gene Proteins 0.000 description 22
- 238000010586 diagram Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 12
- 230000004048 modification Effects 0.000 description 12
- 238000012986 modification Methods 0.000 description 12
- 238000012545 processing Methods 0.000 description 10
- 230000000007 visual effect Effects 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 7
- 238000009877 rendering Methods 0.000 description 6
- 238000004590 computer program Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000003068 static effect Effects 0.000 description 4
- 230000002159 abnormal effect Effects 0.000 description 3
- 238000013467 fragmentation Methods 0.000 description 3
- 238000006062 fragmentation reaction Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 102100022142 Achaete-scute homolog 1 Human genes 0.000 description 2
- 102100022144 Achaete-scute homolog 2 Human genes 0.000 description 2
- 101000901099 Homo sapiens Achaete-scute homolog 1 Proteins 0.000 description 2
- 101000901109 Homo sapiens Achaete-scute homolog 2 Proteins 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000008602 contraction Effects 0.000 description 2
- 239000012634 fragment Substances 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000000750 progressive effect Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 108010001267 Protein Subunits Proteins 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000001364 causal effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000007795 chemical reaction product Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9574—Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本说明书实施例提供了一种页面生成方法、装置及设备,该页面生成方法、装置及设备可用于金融领域或其他领域。所述方法包括接收包括页面标识的页面访问请求;根据所述页面标识判断一级缓存中是否存在与所述页面标识对应的页面缓存信息;确定不存在时,根据所述页面标识从分布式缓存中获取页面定义数据;从所述页面定义数据中提取页面模板数据和组件标识;根据所述组件标识从二级缓存中获取组件缓存信息;将所述页面模板数据和所述组件缓存信息进行组装,生成页面缓存信息;展示与所述页面缓存信息对应的目标页面。利用本说明书实施例不仅可以动态快速地生成组装后的页面,而且可以提升服务器的横向扩展能力,提升系统可用性。
Description
技术领域
本申请涉及互联网技术领域,特别涉及一种页面生成方法、装置及设备。需要说明的是,本申请公开的页面生成方法、装置及设备可用于金融领域,也可用于除金融领域之外的任意领域,本申请公开的页面生成方法、装置及设备的应用领域不做限定。
背景技术
银行门户网站包含大量的广告、营销、活动促销等页面,目前对页面访问的方式主要是在业务人员编辑或者程序发版后,通过将全量页面静态化为文件的方式发布至Web服务器磁盘中,然后从Web服务器磁盘中获取要访问的信息。然而,随着页面信息的不断增加,这种方式不仅对Web服务器磁盘容量的要求更高,而且由于部分页面组件被多个页面引用,这样,当某个组件被修改时,还需要同时发布所有涉及的页面,使得生成页面所消耗的时间较长,生成页面的效率较低。
因此,业内亟需一种可以解决上述技术问题的技术方案。
发明内容
本说明书实施例提供了一种页面生成方法、装置及设备,不仅可以动态快速地生成组装后的页面,而且可以提升服务器的横向扩展能力,提升系统可用性。
本说明书提供的一种页面生成方法、装置及设备是包括以下方式实现的。
一种页面生成方法,包括:接收页面访问请求;其中,所述页面访问请求中包括页面标识;根据所述页面标识判断一级缓存中是否存在与所述页面标识对应的页面缓存信息;确定不存在时,根据所述页面标识从分布式缓存中获取页面定义数据;从所述页面定义数据中提取页面模板数据和组件标识;根据所述组件标识从二级缓存中获取组件缓存信息;将所述页面模板数据和所述组件缓存信息进行组装,生成页面缓存信息;展示与所述页面缓存信息对应的目标页面。
一种页面生成装置,包括:接收模块,用于接收页面访问请求;其中,所述页面访问请求中包括页面标识;判断模块,用于根据所述页面标识判断一级缓存中是否存在与所述页面标识对应的页面缓存信息;第一获取模块,用于确定不存在时,根据所述页面标识从分布式缓存中获取页面定义数据;提取模块,用于从所述页面定义数据中提取页面模板数据和组件标识;第二获取模块,用于根据所述组件标识从二级缓存中获取组件缓存信息;组装模块,用于将所述页面模板数据和所述组件缓存信息进行组装,生成页面缓存信息;展示模块,用于展示与所述页面缓存信息对应的目标页面。
一种页面生成设备,包括至少一个处理器以及存储计算机可执行指令的存储器,所述处理器执行所述指令时实现本说明书实施例中任意一个方法实施例方法的步骤。
一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现本说明书实施例中任意一个方法实施例的步骤。
本说明书提供的一种页面生成方法、装置及设备。一些实施例中可以接收页面访问请求,其中,页面访问请求中包括页面标识,根据页面标识判断一级缓存中是否存在与页面标识对应的页面缓存信息,确定不存在时,可以根据页面标识从分布式缓存中获取页面定义数据。进一步,可以从页面定义数据中提取页面模板数据和组件标识,根据组件标识从二级缓存中获取组件缓存信息,将页面模板数据和组件缓存信息进行组装,生成页面缓存信息,从而展示与页面缓存信息对应的目标页面。采用本说明书提供的实施方案,不仅可以动态快速地生成组装后的页面,而且可以提升服务器的横向扩展能力,提升系统可用性。
附图说明
此处所说明的附图用来提供对本说明书的进一步理解,构成本说明书的一部分,并不构成对本说明书的限定。在附图中:
图1是本说明书提供的一种页面生成方法的一个实施例的流程示意图;
图2是本说明书提供的一种页面组装实施例的示意图;
图3是本说明书提供的一种页面可视化编辑装置示意图;
图4是本说明书提供的一种页面生成方法实施例的流程示意图;
图5是本说明书提供的一种基于多级缓存的页面访问系统的结构示意图;
图6是本说明书提供的一种页面生成装置的一个实施例的模块结构示意图;
图7是本说明书提供的一种页面生成服务器的一个实施例的硬件结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书中的一部分实施例,而不是全部的实施例。基于本说明书中的一个或多个实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书实施例保护的范围。
下面以一个具体的应用场景为例对本说明书实施方案进行说明。具体的,图1是本说明书提供的一种页面生成方法的一个实施例的流程示意图。虽然本说明书提供了如下述实施例或附图所示的方法操作步骤或装置结构,但基于常规或者无需创造性的劳动在所述方法或装置中可以包括更多或者部分合并后更少的操作步骤或模块单元。在逻辑性上不存在必要因果关系的步骤或结构中,这些步骤的执行顺序或装置的模块结构不限于本说明书实施例或附图所示的执行顺序或模块结构。所述的方法或模块结构的在实际中的装置、服务器或终端产品应用时,可以按照实施例或者附图所示的方法或模块结构进行顺序执行或者并行执行(例如并行处理器或者多线程处理的环境、甚至包括分布式处理、服务器集群的实施环境)。
本说明书提供的一种实施方案可以应用到服务器、页面访问系统等中。所述服务器可以包括单台计算机设备,也可以包括多个服务器组成的服务器集群(如Web服务器集群),或者分布式系统的服务器结构等。
需要说明的是,下述实施例描述并不对基于本说明书的其他可扩展到的应用场景中的技术方案构成限制。具体的一种实施例如图1所示,本说明书提供的一种页面生成方法的一种实施例中,所述方法可以包括以下步骤。
S0:接收页面访问请求;其中,所述页面访问请求中包括页面标识。
本说明书实施例中,服务器可以接收页面访问请求。所述页面访问请求中可以包括页面标识。其中,页面标识可以用于标识页面。页面标识可以是URL(Uniform ResourceLocator),如www.icbc.com.cn/某行首页、http://www.icbc.com.cn/pages/abc.html等,当然,页面标识还可以是其他可以唯一标识页面的字符,所属领域技术人员在本申请技术精髓的启示下,还可能做出其它变更,但只要其实现的功能和效果与本申请相同或相似,均应涵盖于本申请保护范围内。
一些实施例中,服务器可以是Web服务器集群,相应的,页面访问请求可以是用户基于Web浏览器发起的。当然,上述只是进行示例性说明,发起页面访问请求的方式不限于上述举例,所属领域技术人员在本申请技术精髓的启示下,还可能做出其它变更,但只要其实现的功能和效果与本申请相同或相似,均应涵盖于本申请保护范围内。
S2:根据所述页面标识判断一级缓存中是否存在与所述页面标识对应的页面缓存信息。
本说明书实施例中,服务器在接收页面访问请求后,可以根据页面标识判断一级缓存中是否存在与页面标识对应的页面缓存信息。其中,一级缓存可以用于存储页面缓存信息。一级缓存可以采用LRU(Least Recently Used)算法限制缓存容量的上限。一些实施场景中,一级缓存的缓存模式可以为Nginx的Proxy Cache代理缓存,可以存放于内存中,以加速缓存的访问。LRU是一种常用的页面置换算法,选择最近最久未使用的页面予以淘汰。Nginx是一个高性能的HTTP和反向代理Web服务器。
页面缓存信息可以理解为是完整的页面结果,可以为HTML(Hypertext MarkedLanguage)的页面结果。其中,HTML是一种构成网页文档的语言。
一些实施例中,所述根据所述页面标识判断一级缓存中是否存在与所述页面标识对应的页面缓存信息前,可以根据所述页面标识,利用一致性哈希算法,确定第一服务器节点;相应的,根据所述页面标识判断所述第一服务节点的一级缓存中是否存在与所述页面标识对应的页面缓存信息。
一些实施场景中,根据所述页面标识判断一级缓存中是否存在与所述页面标识对应的页面缓存信息前,可以根据页面标识,利用一致性哈希算法,将页面访问请求路由至第一服务器节点,然后判断第一服务节点的一级缓存中是否存在与页面标识对应的页面缓存信息。
一些实施场景中,根据实际场景可以将Web服务器集群划分为不同服务器节点,第一服务器节点可以是其中一个节点,每个节点根据不同的流量情况可以调整为多个服务器(容器),以支持热点不同时候能有针对性的扩容。例如,有7台服务器,可以将其划分为3个节点,其中,第一个节点包括2台服务器,第二个节点包括3台服务器,第3个节点包括2台服务器。
其中,一致性哈希算法的基本原理可以理解为:首先将整个哈希值空间预分片为2的32次方形成一个哈希环,然后计算不同节点的哈希值(如上述7台服务器划分后的3个节点的哈希值分别可以记为HASH1、HASH2、HASH3),将其映射到哈希环上。进一步计算接收到的页面访问请求中URL的哈希值,按顺时针方向找到最近的节点,该节点可以认为是上述第一服务器节点。这样,在确定第一服务器节点后,可以判断第一服务节点的一级缓存中是否存在与页面标识对应的页面缓存信息。
一些实施例中,当确定一级缓存中存在与页面标识对应的页面缓存信息时,可以直接获取该页面缓存信息,返回给发送页面访问请求的客户端,以使客户端快速显示完整的页面结果。
本说明书实施例中,通过分片路由能力(一致性哈希算法),可以使缓存内容仅在部分节点上,而不是全量的缓存都在同一个服务器上,从而在异常情况下,不会损失所有访问能力,提高系统可用性。
S4:确定不存在时,根据所述页面标识从分布式缓存中获取页面定义数据。
本说明书实施例中,当确定一级缓存中不存在与页面标识对应的页面缓存信息时,可以根据页面标识从分布式缓存中获取页面定义数据。
其中,上述页面定义数据可以理解为是元数据,元数据是描述其它数据的数据,或者说是用于提供某种资源的有关信息的结构数据。页面定义数据中可以包括页面模板数据(即页面内容)、组件、数据源信息等。页面模板数据可以理解为是一个带占位符的HTML代码。如:
...
<title>首页</title>
...
<div>{{组件1}}</div>
<div>{{组件2}}</div>
...
组件是对数据和方法的简单封装。组件可以有自己的属性和方法。属性是组件数据的简单访问者。方法则是组件的一些简单而可见的功能。使用组件可以实现拖放式编程、快速的属性处理以及真正的面向对象的设计。组件可以包括组件标识、组件模板数据、组件数据等。组件标识也可以称为组件程序名称,例如,列表组件。组件标识可以标识组件,通过组件标识可以相应的确定页面中包括哪些组件。基于页面模板数据和页面中包括的组件可以生成完整的页面结果。组件模板数据可以理解为是一个带占位符的HTML代码。组件数据可以包括组件参数、组件数据源等。组件参数可以包括标题、颜色等,其可以以JSON对象表示,如{“标题”:“某行风貌”}。组件数据源可以包括数据源名称、数据源参数等,数据源名称可以以字符串表示,如“某行风貌列表数据”;数据源参数可以包括列表行数、排序方式等,其可以以JSON对象表示,如{“行数”:“20”}。
数据源信息可以理解为组件中所需要用到的数据来源信息,其可以包括数据源URL、数据源名称。数据源名称是数据源的标识,如“某行风貌列表数据”。通过http的GET方式可以请求数据源URL。数据源URL中包含了组件数据源中参数的占位符信息,以便做参数上的替换,替换后的完整URL可以作为缓存的KEY值。
例如一些实施场景中,接收的页面访问请求中包括的URL为http://www.icbc.com.cn/pages/abc.html,相应的页面定义数据(即元数据)可能为:
一些实施例中,所述根据所述页面标识从分布式缓存中获取页面定义数据前,可以根据所述页面标识判断所述分布式缓存中是否存在页面定义数据;确定不存在时,可以根据所述页面标识从页面发布系统数据库中获取页面定义数据;进一步,将所述页面定义数据存入所述分布式缓存中。其中,分布式缓存可以是分布式数据缓存集群,其可以用于存放组件中所需要用到的数据来源信息。当然,上述分布式缓存中的数据可以不定期变化更新。一些实施场景中,分布式缓存可以采用LRU算法限制缓存容量的上限。一些实施场景中,分布式缓存中缓存失效后,可以通过页面发布系统数据库重新建立缓存数据。常用的分布式数据缓存集群可以包括Redis缓存集群等。页面发布系统数据库可以是数据库集群,可以用于存储页面、组件、数据源及其相关数据。一些实施场景中,数据库可采用关系型数据库,也可结合非关系型数据库存储页面信息。
S6:从所述页面定义数据中提取页面模板数据和组件标识。
本说明书实施例中,在根据页面标识从分布式缓存中获取页面定义数据后,可以从页面定义数据中提取页面模板数据和组件标识,以便后续根据组件标识获取相应的组件缓存信息,进一步根据页面模板数据和组件缓存信息生成页面缓存信息。
S8:根据所述组件标识从二级缓存中获取组件缓存信息。
本说明书实施例中,在获得页面模板数据和组件标识后,可以根据组件标识从二级缓存中获取组件缓存信息。其中,二级缓存可以用于存储组件缓存信息。二级缓存可以采用LRU算法限制缓存容量上限。一些实施场景中,二级缓存的缓存模式为Nginx的ProxyCache代理缓存,可以存放于内存中,以加速缓存的访问。组件缓存信息可以理解为是完整的组件,可以为HTML(Hypertext Marked Language)的组件结果。
一些实施例中,所述根据所述组件标识从二级缓存中获取组件缓存信息前,可以根据所述组件标识,利用一致性哈希算法,确定第二服务器节点;相应的,根据所述组件标识从所述第二服务器节点的二级缓存中获取组件缓存信息。
一些实施场景中,根据实际场景可以将Web服务器集群划分为不同服务器节点,第二服务器节点可以是其中一个节点,每个节点根据不同的流量情况可以调整为多个服务器(容器),以支持热点不同时候能有针对性的扩容。例如,有7台服务器,可以将其划分为3个节点,其中,第一个节点包括2台服务器,第二个节点包括3台服务器,第3个节点包括2台服务器。
一些实施场景中,可以将整个哈希值空间预分片为2的32次方形成一个哈希环,然后计算不同节点的哈希值(如上述7台服务器划分后的3个节点的哈希值分别可以记为HASH1、HASH2、HASH3),将其映射到哈希环上。进一步计算组件标识的哈希值,按顺时针方向找到最近的节点,该节点可以认为是上述第二服务器节点。这样,在确定第二服务器节点后,可以根据组件标识从第二服务器节点的二级缓存中获取组件缓存信息。由于通过分片路由能力(一致性哈希算法),可以使缓存内容仅在部分节点上,而不是全量的缓存都在同一个服务器上,从而在异常情况下,不会损失所有访问能力,可以提高系统可用性。
一些实施例中,所述根据所述组件标识从所述第二服务器节点的二级缓存中获取组件缓存信息前,可以根据所述组件标识判断所述第二服务器节点的二级缓存中是否存在组件缓存信息;确定不存在时,可以根据所述组件标识从分布式缓存中获取组件模板数据和组件数据;将所述组件模板数据和所述组件数据进行组装,生成组件缓存信息;进一步,将所述组件缓存信息存入所述第二服务器节点的二级缓存中。
由于二级缓存中可能存在与组件标识对应的组件缓存信息,也可能不存在与组件标识对应的组件缓存信息,所以一些实施场景中,在从二级缓存中获取组件缓存信息前,可以根据组件标识判断二级缓存中是否存在对应的组件缓存标识,若存在,则可以直接从中获取,若不存在,则可以获取生成组件缓存信息的信息,通过组装生成组件缓存信息。其中,生成组件缓存信息的信息可以包括组件模板数据和组件数据。
一些实施场景中,根据组件标识可以从分布式缓存中获取生成组件缓存信息的信息。由于分布式缓存中可能存在生成组件缓存信息的信息,也可能不存在生成组件缓存信息的信息,所以一些实施场景中,可以根据组件标识判断分布式缓存中是否存在生成组件缓存信息的信息。
一些实施场景中,所述根据所述组件标识从分布式缓存中获取组件模板数据和组件数据前,可以根据所述组件标识判断所述分布式缓存中是否存在组件模板数据和组件数据;确定不存在时,可以从页面发布系统数据库中获取组件模板数据和组件数据;将所述组件模板数据和所述组件数据存入所述分布式缓存中。这样,在需要组件模板数据和组件数据时,可以直接从分布式缓存中获取,从而可以有效提高页面渲染速度。
一些实施场景中,在获取组件模板数据和组件数据后,可以将组件模板数据和组件数据进行组装,生成组件缓存信息。
一些实施场景中,在生成组件缓存信息后,可以将其存入第二服务器节点的二级缓存中,这样,可以直接根据组件标识从二级缓存中获取组件缓存信息,从而可以有效提升客户端的渲染响应时间。
S10:将所述页面模板数据和所述组件缓存信息进行组装,生成页面缓存信息。
本说明书实施例中,在获取组件缓存信息后,可以将页面模板数据和组件缓存信息进行组装,生成页面缓存信息。
一些实施例中,在生成页面缓存信息后,可以将页面缓存信息存入一级缓存中。这样,后续在接收到相同的访问请求时,可以直接从一级缓存中获取对应的页面缓存信息返回给发送页面访问请求的客户端,以使客户端快速显示完整的页面结果。
如图2所示,图2是本说明书提供的一种页面组装实施例的示意图,其中,C1部分表示一个完整的页面结果,可以缓存在一级缓存中。C2部分表示页面模板(页面模板数据),其可以通过页面定义数据获取,页面定义数据可以存储于页面发布系统数据库中,同时,页面定义数据也可以缓存在分布式缓存中。C3部分表示页面中各个组件的缓存结果(组件缓存信息),该结果已结合组件数据生成为HTML代码,其包括组件本身参数的占位符和组件模板数据,可以缓存在二级缓存中。C4部分表示组件模板(组件模板数据),可以缓存在分布式缓存中,当分布式缓存中不存在时,可以从页面发布系统数据库中获取并加载到分布式缓存中。C5部分表示组件数据,可以缓存在分布式缓存中,当分布式缓存中不存在时,可以从页面发布系统数据库中获取并加载到分布式缓存中。当C1部分不存在时,可以通过C2部分与C3部分组装获得。当C3部分不存在时,可以通过C4部分与C5部分组装获得。其中,页面模板、组件模板对应有程序,可以根据程序实现页面、组件的组装。
一些实施场景中,页面组装可以基于页面可视化编辑装置实现。页面可视化编辑装置可以通过可视化拖拽方式,将事先已定制的“组件”放置在页面中,并通过“组件属性编辑器”维护“组件”的各项属性,其中,包括组件所需呈现数据的“数据源”属性。通过多个组件的维护,可以完成“页面”的编辑和组装。基于页面可视化编辑装置,在编辑过程中可以实时生成页面定义数据。由于结构化的信息便于缓存,页面定义数据可以转化为页面结构化信息进行存储。如图3所示,图3是本说明书提供的一种页面可视化编辑装置示意图,其中,该装置可以包括组件选择区、页面实时预览区、组件属性编辑区,组件选择区中可以包括一个或多个组件,如组件1、组件2、组件3、组件4等,组件是事先开发定制的局部可视界面程序。由于页面中的元素均可以采用组件进行拼装,这样,用户可以从组件选择区选择组件,并拖拽至“页面实时预览区”。页面实时预览区可实时预览页面展现效果,拖拽的组件可调整其布局位置及大小。组件属性编辑区可以设置组件自身的参数(如标题),以及数据源和数据源参数。
S12:展示与所述页面缓存信息对应的目标页面。
本说明书实施例中,在生成页面缓存信息后,可以展示与页面缓存信息对应的目标页面。其中,目标页面可以理解为是与访问请求对应的页面。
如图4所示,图4是本说明书提供的一种页面生成方法实施例的流程示意图,其通过页面访问进行触发,首先,接收页面URL输入,根据URL判断一级缓存中是否有页面缓存,若一级缓存中有页面缓存,则返回页面结果,结束流程。若一级缓存中没有页面缓存(页面缓存信息),则可以根据URL从分布式缓存中获取页面定义数据(即元数据),其中,若分布式缓存中没有页面定义数据,则可以根据URL回源请求至数据库(页面发布系统数据库),从数据库中获取页面定义数据并存入分布式缓存。进一步,可以从页面定义数据中提取页面模板和组件标识,根据组件标识判断二级缓存中是否存在组件缓存(组件缓存信息),若二级缓存中存在组件缓存,则可以将页面模板和组件缓存组装成页面,并存入一级缓存中,然后返回页面结果,结束流程。若二级缓存中不存在组件缓存,则可以根据组件标识从分布式缓存中获取组件模板数据和组件数据,然后进行组装生成组件,并存入二级缓存。当所有组件都在二级缓存中建立缓存后,可以将页面模板和组件缓存组装成页面,并存入一级缓存中,然后返回页面结果,结束流程。其中,若分布式缓存中没有组件模板数据和组件数据,则可以根据URL回源请求至数据库(页面发布系统数据库),从数据库中获取组件模板数据和组件数据并存入分布式缓存。其中,回源请求可以采用同步锁进行并发访问,即每次只有1个请求进行回源数据库操作,其余请求等待该请求返回后从分布式缓存中取数。
一些实施例中,服务器还可以接收缓存失效信息;所述缓存失效信息中包括失效页面标识;根据所述失效页面标识删除一级缓存、分布式缓存、二级缓存中对应的数据。
一些实施场景中,当修改页面或修改其他内容数据时,可以触发对应页面或数据源数据的缓存失效事件,进而向服务器发送缓存失效信息。服务器收到后,可以根据缓存失效信息中包括的失效页面标识先对关联的数据源数据(如页面发布系统数据库中数据)进行失效或更新,然后对关联的组件缓存(如二级缓存中数据、分布式缓存数据)进行失效,最后可以根据缓存策略对页面缓存(如以及缓存中数据、分布式缓存数据)进行失效。其中,缓存策略可以包括根据流量访问时间的失效策略、根据绝对时间的失效策略、始终缓存的策略等,具体可以根据实际场景进行设定。比如,内容页(如一篇新闻、促销活动),其基数较大,一篇文章发出去后,一般很少修改,存在一定的热点访问情况,所以可以采用根据流量访问时间的失效策略(比如5分钟没有被人访问过了就自动失效)。再如,首页,最重要的页面,且是个聚合页,一般可以采用始终缓存的策略,不进行自动失效,当发生修改触发缓存失效事件时,可以让其主动更新一级缓存完整页面结果。此外,由于时效性不用非常高,首页也可以采用绝对时间的失效策略(比如,固定每5分钟,主动更新首页)。当然,上述只是进行示例性说明,缓存策略不限于上述举例,所属领域技术人员在本申请技术精髓的启示下,还可能做出其它变更,但只要其实现的功能和效果与本申请相同或相似,均应涵盖于本申请保护范围内。
本说明书实施例,通过动态失效机制,可对页面进行局部动态更新,提升了各个组件的变更响应效率,满足日益变化的业务需求。
本说明书实施例可以基于多层页面缓存机制和高性能的页面模板实时渲染技术以及灵活的页面可视化编辑技术实现。
本说明书实施例,通过服务端的高性能实时模板渲染技术,生成完整的页面结果,相比通过多次ajax异步请求数据的页面,不仅保持了静态化页面的SEO(Search EngineOptimization)优化特性,而且提升了客户端的渲染响应时间和页面生成的灵活性;通过Web服务器缓存、分布式缓存技术、数据库的多层页面内容访问结构增强了系统的稳定性和可用性;通过一致性哈希算法和多级缓存方式实现了Web服务器缓存的横向扩缩能力。
本说明书实施例,使用内存缓存代替磁盘文件静态化,结合分片技术,不仅可以提升服务器的横向扩展能力,更符合PaaS云原生部署方式,而且可以进行动态扩缩容,从而夯实了系统架构,提升了系统可用性。
由于目前的网页静态化做法是多台Web服务器(物理机)通过磁盘存储一样的内容(比如每台机器上都有500G的且完全相同的页面文件)来实现大流量访问的并发能力,当要扩展机器时,需要重头到尾的搭建一遍,并且要做磁盘上数据的迁移才能正式上线,从而无法快速进行横向扩容。本说明书提供的页面生成方法,首先可以基于PaaS平台进行容器化的快速部署Web服务器(PaaS平台特点是容器可快速启停,内置存储数据会全部丢失,一般数据放在外部存储设备中,容器本身不会有太大磁盘空间);其次,使用缓存方案不仅可以获得和原来静态化文件相提并论的快速访问能力,而且当缓存没有或丢失了,可以回源到数据库(或分布式存储设备)重塑缓存,从而提升系统的可用性;再者,通过“负载均衡”提供的“分片”路由能力(一致性哈希算法),使得缓存内容仅在部分节点上,而不是全量的缓存都在同一个节点上,这样,当出现异常情况时,不会损失所有访问能力,当扩展机器时,只要重新更新分片算法,失效一部分节点的缓存即可,从而提升系统的可用性。
当然,上述只是进行示例性说明,本说明书实施例不限于上述举例,所属领域技术人员在本申请技术精髓的启示下,还可能做出其它变更,但只要其实现的功能和效果与本申请相同或相似,均应涵盖于本申请保护范围内。
本说明书中上述方法的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参加即可,每个实施例重点说明的都是与其他实施例的不同之处。相关之处参见方法实施例的部分说明即可。
从以上的描述中,可以看出,本申请实施例可以接收页面访问请求,其中,页面访问请求中包括页面标识,根据页面标识判断一级缓存中是否存在与页面标识对应的页面缓存信息,确定不存在时,可以根据页面标识从分布式缓存中获取页面定义数据。进一步,可以从页面定义数据中提取页面模板数据和组件标识,根据组件标识从二级缓存中获取组件缓存信息,将页面模板数据和组件缓存信息进行组装,生成页面缓存信息,从而展示与页面缓存信息对应的目标页面。可见,采用本说明书实施例,不仅可以动态快速地生成组装后的页面,而且可以提升服务器的横向扩展能力,提升系统可用性。
基于上述所述一种页面生成方法,本说明书一个或多个实施例还提供一种页面访问系统。如图5所示,图5是本说明书提供的一种基于多级缓存的页面访问系统的结构示意图,该系统可以在高并发、高吞吐量的场景下,快速响应页面内容变化、实现横向扩展,可用于银行、政府、企事业等门户网站中。其中,本地一级缓存、本地二级缓存可以是web服务器实现,如Nginx+java。负载均衡可以是4层网络负载均衡+7层网络负载均衡,如haproxy+Nginx。分布式缓存可以是Java+Redis。页面发布系统数据库可以是关系型数据库+对象存储集群。
具体的,B1为门户网站页面管理客户端,具体可以为Web浏览器,其可以包括页面可视化编辑模块和页面信息结构化模块,页面可视化编辑模块用于可视化页面编辑;页面信息结构化模块用于生成页面结构化定义信息(页面定义数据)。同时,B1可以将页面结构化信息提交至B2。
B2为页面发布系统应用服务器,其可以接受B1提交的页面结构化信息,通过页面发布模块提交至B3;此外,B2对于页面修改的请求,可以通过缓存失效模块发布缓存失效事件至B4。
B3为页面发布系统的数据库集群,可以用于存储页面、组件、数据源及其相关数据。
B4为消息队列,可以用于接受缓存失效事件,并通知B5、B7进行缓存失效。其中,常用的消息队列可以包括Kafka、Redis发布订阅机制。
B5为页面访问的应用服务器集群,其可以在接受页面访问请求时,从B6获取缓存中的数据内容,若B6不存在数据,则可以从B3中获取数据,然后通过数据缓存管理模块存入B6中,再进行请求返回;同时,B5还可以接受B4传递的缓存失效事件,删除或更新B6中的数据。
B6为分布式数据缓存集群,可以用于存放数据源对应的数据。其中,缓存可以采用LRU算法限制缓存容量的上限,缓存失效后可以通过B5重新建立缓存数据。常用的分布式数据缓存集群包括Redis缓存集群。
B7为Web服务器集群,其包括缓存管理模块和页面组装模块。具体的,其可以根据传入的页面URL,从本地一级缓存获取完整的页面结果,若本地一级缓存不存在,则可以向B5请求页面定义数据,并访问B11请求组件缓存结果,进一步,通过页面组装模块进行页面的实时拼装。此外,B7可以接受B4传递的缓存失效事件,删除B8、B9中的数据。其中,常见的带有缓存和页面组装模块的Web服务器有Nginx,其中常用的模板及渲染技术为Nginx中基于Lua的template技术。
B8为本地一级缓存,用于存放完整的页面结果,其可以采用LRU算法限制缓存容量的上限。当本地一级缓存不存在时,B7可以回源请求至本地二级缓存获取组件缓存信息进行页面组装。
B9为本地二级缓存,用于存放组件缓存信息,其可以采用LRU算法限制缓存容量上限。当本地二级缓存不存在时,B7可以回源请求至分布式数据缓存集群获取数据并进行组件的组装。
B10为门户网站访问客户端,具体可以为Web浏览器,其可以通过页面的唯一URL进行访问。
B11为负载均衡服务器,其可以根据URL使用一致性哈希算法,将请求路由至B7中不同节点,以获得B7横向扩容的能力。其中,B11也可以接受组件内容的内部请求,对组件标识进行路由。常用的7层网络负载均衡服务器有Nginx。
本说明书实施例中提供的基于多级缓存的页面访问系统的系统,可以为门户类相关网站提供更为可靠、高效的访问能力,为广告、营销、文化宣传等业务活动提供技术保障。
需要说明的,上述所述的系统根据方法实施例的描述还可以包括其他的实施方式,具体的实现方式可以参照相关方法实施例的描述,在此不作一一赘述。
基于上述所述一种页面生成方法,本说明书一个或多个实施例还提供一种页面生成装置。所述的装置可以包括使用了本说明书实施例所述方法的系统(包括分布式系统)、软件(应用)、模块、组件、服务器、客户端等并结合必要的实施硬件的装置。基于同一创新构思,本说明书实施例提供的一个或多个实施例中的装置如下面的实施例所述。由于装置解决问题的实现方案与方法相似,因此本说明书实施例具体的装置的实施可以参见前述方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
具体地,图6是本说明书提供的一种页面生成装置的一个实施例的模块结构示意图,如图6所示,本说明书提供的一种页面生成装置可以包括:接收模块120,判断模块122,第一获取模块124,提取模块126,第二获取模块128,组装模块130,展示模块132。
接收模块120,可以用于接收页面访问请求;其中,所述页面访问请求中包括页面标识;
判断模块122,可以用于根据所述页面标识判断一级缓存中是否存在与所述页面标识对应的页面缓存信息;
第一获取模块124,可以用于确定不存在时,根据所述页面标识从分布式缓存中获取页面定义数据;
提取模块126,可以用于从所述页面定义数据中提取页面模板数据和组件标识;
第二获取模块128,可以用于根据所述组件标识从二级缓存中获取组件缓存信息;
组装模块130,可以用于将所述页面模板数据和所述组件缓存信息进行组装,生成页面缓存信息;
展示模块132,可以用于展示与所述页面缓存信息对应的目标页面。
需要说明的,上述所述的装置根据方法实施例的描述还可以包括其他的实施方式,具体的实现方式可以参照相关方法实施例的描述,在此不作一一赘述。
本说明书还提供一种页面生成设备的实施例,包括处理器及用于存储处理器可执行指令的存储器,所述指令被所述处理器执行时实现包括以下步骤:接收页面访问请求;其中,所述页面访问请求中包括页面标识;根据所述页面标识判断一级缓存中是否存在与所述页面标识对应的页面缓存信息;确定不存在时,根据所述页面标识从分布式缓存中获取页面定义数据;从所述页面定义数据中提取页面模板数据和组件标识;根据所述组件标识从二级缓存中获取组件缓存信息;将所述页面模板数据和所述组件缓存信息进行组装,生成页面缓存信息;展示与所述页面缓存信息对应的目标页面。
需要说明的,上述所述的设备根据方法或装置实施例的描述还可以包括其他的实施方式。具体的实现方式可以参照相关方法实施例的描述,在此不作一一赘述。
本说明书所提供的方法实施例可以在移动终端、计算机终端、服务器或者类似的运算装置中执行。以运行在服务器上为例,图7是本说明书提供的一种页面生成服务器的一个实施例的硬件结构框图,该服务器可以是上述实施例中的页面生成装置或页面生成设备。如图7所示,服务器10可以包括一个或多个(图中仅示出一个)处理器100(处理器100可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器200、以及用于通信功能的传输模块300。本领域普通技术人员可以理解,图7所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,服务器10还可包括比图7中所示更多或者更少的组件,例如还可以包括其他的处理硬件,如数据库或多级缓存、GPU,或者具有与图7所示不同的配置。
存储器200可用于存储应用软件的软件程序以及模块,如本说明书实施例中的页面生成方法对应的程序指令/模块,处理器100通过运行存储在存储器200内的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器200可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器200可进一步包括相对于处理器100远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输模块300用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端的通信供应商提供的无线网络。在一个实例中,传输模块300包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输模块300可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书提供的上述实施例所述的方法或装置可以通过计算机程序实现业务逻辑并记录在存储介质上,所述的存储介质可以计算机读取并执行,实现本说明书实施例所描述方案的效果。所述存储介质可以包括用于存储信息的物理装置,通常是将信息数字化后再以利用电、磁或者光学等方式的媒体加以存储。所述存储介质可以包括:利用电能方式存储信息的装置如,各式存储器,如RAM、ROM等;利用磁能方式存储信息的装置如,硬盘、软盘、磁带、磁芯存储器、磁泡存储器、U盘;利用光学方式存储信息的装置如,CD或DVD。当然,还有其他方式的可读存储介质,例如量子存储器、石墨烯存储器等等。
本说明书提供的上述页面生成方法或装置实施例可以在计算机中由处理器执行相应的程序指令来实现,如使用windows操作系统的c++语言在PC端实现、linux系统实现,或其他例如使用android、iOS系统程序设计语言在智能终端实现,以及基于量子计算机的处理逻辑实现等。
需要说明的是说明书上述所述的装置、设备、系统根据相关方法实施例的描述还可以包括其他的实施方式,具体的实现方式可以参照对应方法实施例的描述,在此不作一一赘述。
本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于硬件+程序类实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书一个或多个时可以把部分模块的功能在同一个或多个软件和/或硬件中实现,也可以将实现同一功能的模块由多个子模块或子单元的组合实现等。
本发明是参照根据本发明实施例的方法、装置、设备、系统的流程图和/或方框图来描述的。应理解可由计算机程序指令实现,可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
本领域技术人员应明白,本说明书一个或多个实施例可提供为方法、系统或计算机程序产品。因此,本说明书一个或多个实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。
以上所述仅为本说明书一个或多个实施例的实施例而已,并不用于限制本本说明书一个或多个实施例。对于本领域技术人员来说,本说明书一个或多个实施例可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在权利要求范围之内。
Claims (10)
1.一种页面生成方法,其特征在于,包括:
接收页面访问请求;其中,所述页面访问请求中包括页面标识;
根据所述页面标识判断第一服务器节点的一级缓存中是否存在与所述页面标识对应的页面缓存信息,所述第一服务器节点根据页面标识的哈希值确定;
确定不存在时,根据所述页面标识从分布式缓存中获取页面定义数据;
从所述页面定义数据中提取页面模板数据和组件标识;
根据所述组件标识从第二服务器节点的二级缓存中获取组件缓存信息,所述第二服务器节点根据组件标识的哈希值确定;
将所述页面模板数据和所述组件缓存信息进行组装,生成页面缓存信息;
展示与所述页面缓存信息对应的目标页面 ;
其中,所述根据所述组件标识从第二服务器节点的二级缓存中获取组件缓存信息前,包括:
根据所述组件标识判断所述第二服务器节点的二级缓存中是否存在组件缓存信息;
确定不存在时,根据所述组件标识从分布式缓存中获取组件模板数据和组件数据;
将所述组件模板数据和所述组件数据进行组装,生成组件缓存信息;
将所述组件缓存信息存入所述第二服务器节点的二级缓存中。
2.根据权利要求1所述的方法,其特征在于,所述第一服务器节点根据页面标识的哈希值确定,包括:
根据所述页面标识,利用一致性哈希算法,确定第一服务器节点。
3.根据权利要求1所述的方法,其特征在于,所述根据所述页面标识从分布式缓存中获取页面定义数据前,包括:
根据所述页面标识判断所述分布式缓存中是否存在页面定义数据;
确定不存在时,根据所述页面标识从页面发布系统数据库中获取页面定义数据;
将所述页面定义数据存入所述分布式缓存中。
4.根据权利要求1所述的方法,其特征在于,所述第二服务器节点根据组件标识的哈希值确定,包括:
根据所述组件标识,利用一致性哈希算法,确定第二服务器节点。
5.根据权利要求1所述的方法,其特征在于,所述根据所述组件标识从分布式缓存中获取组件模板数据和组件数据前,包括:
根据所述组件标识判断所述分布式缓存中是否存在组件模板数据和组件数据;
确定不存在时,从页面发布系统数据库中获取组件模板数据和组件数据;
将所述组件模板数据和所述组件数据存入所述分布式缓存中。
6.根据权利要求1所述的方法,其特征在于,所述生成页面缓存信息后,包括:
将所述页面缓存信息存入所述一级缓存中。
7.根据权利要求6所述的方法,其特征在于,还包括:
接收缓存失效信息;所述缓存失效信息中包括失效页面标识;
根据所述失效页面标识删除一级缓存、分布式缓存、二级缓存中对应的数据。
8.一种页面生成装置,其特征在于,包括:
接收模块,用于接收页面访问请求;其中,所述页面访问请求中包括页面标识;
判断模块,用于根据所述页面标识判断第一服务器节点的一级缓存中是否存在与所述页面标识对应的页面缓存信息,所述第一服务器节点根据页面标识的哈希值确定;
第一获取模块,用于确定不存在时,根据所述页面标识从分布式缓存中获取页面定义数据;
提取模块,用于从所述页面定义数据中提取页面模板数据和组件标识;
第二获取模块,用于根据所述组件标识从第二服务器节点的二级缓存中获取组件缓存信息,所述第二服务器节点根据组件标识的哈希值确定;
组装模块,用于将所述页面模板数据和所述组件缓存信息进行组装,生成页面缓存信息;
展示模块,用于展示与所述页面缓存信息对应的目标页面;
其中,所述根据所述组件标识从第二服务器节点的二级缓存中获取组件缓存信息前,包括:
根据所述组件标识判断所述第二服务器节点的二级缓存中是否存在组件缓存信息;
确定不存在时,根据所述组件标识从分布式缓存中获取组件模板数据和组件数据;
将所述组件模板数据和所述组件数据进行组装,生成组件缓存信息;
将所述组件缓存信息存入所述第二服务器节点的二级缓存中。
9.一种页面生成设备,其特征在于,包括至少一个处理器以及存储计算机可执行指令的存储器,所述处理器执行所述指令时实现权利要求1-7中任意一项所述方法的步骤。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机指令,所述指令被执行时实现权利要求1至7中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110170703.9A CN112905175B (zh) | 2021-02-08 | 2021-02-08 | 一种页面生成方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110170703.9A CN112905175B (zh) | 2021-02-08 | 2021-02-08 | 一种页面生成方法、装置及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112905175A CN112905175A (zh) | 2021-06-04 |
CN112905175B true CN112905175B (zh) | 2024-05-28 |
Family
ID=76123963
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110170703.9A Active CN112905175B (zh) | 2021-02-08 | 2021-02-08 | 一种页面生成方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112905175B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111046310B (zh) * | 2019-12-12 | 2024-03-19 | 北京奇艺世纪科技有限公司 | 页面处理方法、装置、服务器及计算机可读存储介质 |
CN113282862A (zh) * | 2021-06-07 | 2021-08-20 | 青岛海尔科技有限公司 | 网页的发布方法及装置、存储介质、电子装置 |
CN113076105B (zh) * | 2021-06-08 | 2021-08-24 | 知学云(北京)科技股份有限公司 | 一种面向在线教育的组件化页面渲染方法、系统及存储器 |
CN113722643A (zh) * | 2021-09-02 | 2021-11-30 | 山谷网安科技股份有限公司 | 提高网页全站静态化生成效率的方法及系统 |
CN114327441B (zh) * | 2021-12-24 | 2024-10-01 | 中国联合网络通信集团有限公司 | 网页制作处理方法、装置、设备及存储介质 |
CN114338931A (zh) * | 2021-12-30 | 2022-04-12 | 中国电信股份有限公司 | 批量短信提醒方法、装置以及计算机可读存储介质 |
US12015656B2 (en) * | 2022-05-09 | 2024-06-18 | Servicenow, Inc. | Dynamic web component stream renderer |
CN115033815A (zh) * | 2022-06-22 | 2022-09-09 | 支付宝(杭州)信息技术有限公司 | 一种基于组件的动态主题生成方法、装置以及设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2327198A1 (en) * | 2000-11-30 | 2002-05-30 | Ibm Canada Limited-Ibm Canada Limitee | Cache page indexing for web server environments |
CN103312733A (zh) * | 2012-03-08 | 2013-09-18 | 腾讯科技(深圳)有限公司 | 信息处理方法和装置 |
CN103428243A (zh) * | 2012-05-21 | 2013-12-04 | 阿里巴巴集团控股有限公司 | 动态网页静态存储的实现方法、设备和系统 |
CN108153798A (zh) * | 2016-12-02 | 2018-06-12 | 阿里巴巴集团控股有限公司 | 页面信息处理方法、装置及系统 |
CN109977084A (zh) * | 2019-03-30 | 2019-07-05 | 南京联创北斗技术应用研究院有限公司 | 一种基于文件缓存器的页面静态化方法 |
CN111581563A (zh) * | 2020-04-30 | 2020-08-25 | 北京字节跳动网络技术有限公司 | 页面响应方法、装置、存储介质和电子设备 |
CN111708600A (zh) * | 2020-08-20 | 2020-09-25 | 腾讯科技(深圳)有限公司 | 页面显示方法、装置、设备及计算机可读存储介质 |
-
2021
- 2021-02-08 CN CN202110170703.9A patent/CN112905175B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2327198A1 (en) * | 2000-11-30 | 2002-05-30 | Ibm Canada Limited-Ibm Canada Limitee | Cache page indexing for web server environments |
CN103312733A (zh) * | 2012-03-08 | 2013-09-18 | 腾讯科技(深圳)有限公司 | 信息处理方法和装置 |
CN103428243A (zh) * | 2012-05-21 | 2013-12-04 | 阿里巴巴集团控股有限公司 | 动态网页静态存储的实现方法、设备和系统 |
CN108153798A (zh) * | 2016-12-02 | 2018-06-12 | 阿里巴巴集团控股有限公司 | 页面信息处理方法、装置及系统 |
CN109977084A (zh) * | 2019-03-30 | 2019-07-05 | 南京联创北斗技术应用研究院有限公司 | 一种基于文件缓存器的页面静态化方法 |
CN111581563A (zh) * | 2020-04-30 | 2020-08-25 | 北京字节跳动网络技术有限公司 | 页面响应方法、装置、存储介质和电子设备 |
CN111708600A (zh) * | 2020-08-20 | 2020-09-25 | 腾讯科技(深圳)有限公司 | 页面显示方法、装置、设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112905175A (zh) | 2021-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112905175B (zh) | 一种页面生成方法、装置及设备 | |
US10331758B2 (en) | Digital communications platform for webpage overlay | |
JP6410280B2 (ja) | ウェブサイト・アクセス方法、装置、およびウェブサイト・システム | |
KR102185864B1 (ko) | 프레젠테이션을 위한 네이티브 콘텐츠의 서버측 렌더링 방법 및 시스템 | |
US8788760B2 (en) | Adaptive caching of data | |
US20180285470A1 (en) | A Mobile Web Cache Optimization Method Based on HTML5 Application Caching | |
KR101391894B1 (ko) | 콘텐츠 요청 최적화 | |
WO2016026384A1 (zh) | 一种客户端页面显示方法、装置及系统 | |
CN106575298A (zh) | 包含动态内容和陈旧内容的网站的快速呈现 | |
CN102651750B (zh) | 一种提供网页信息的方法、系统及装置 | |
CN103383687B (zh) | 一种页面处理方法和装置 | |
US9811590B1 (en) | Managing cached data in a network environment | |
US10645192B2 (en) | Identifying content files in a cache using a response-based cache index | |
US11916729B2 (en) | Automated configuration of a content delivery network | |
CN104572777B (zh) | 基于UIWebView组件的网页加载方法及装置 | |
CN106372136A (zh) | 分布式缓存系统、方法及存储介质 | |
JP6383430B2 (ja) | プロファイルベースのキャッシュ管理 | |
CN104424199A (zh) | 搜索方法和装置 | |
US12069318B2 (en) | Unified routing and caching logic for applications utilizing a content delivery network | |
US11652908B2 (en) | Split testing with custom cache keys for content delivery networks | |
CN104391868A (zh) | 动态页面静态化的装置和方法 | |
JP2014528607A (ja) | クラスタにおける効率的なキャッシュ管理 | |
CN115827907B (zh) | 基于分布式内存的跨云多源数据立方体发现与集成方法 | |
US10165036B1 (en) | Network resource remote process execution | |
CN101458693A (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 |