CN106126663B - 页面聚合方法及装置 - Google Patents
页面聚合方法及装置 Download PDFInfo
- Publication number
- CN106126663B CN106126663B CN201610489019.6A CN201610489019A CN106126663B CN 106126663 B CN106126663 B CN 106126663B CN 201610489019 A CN201610489019 A CN 201610489019A CN 106126663 B CN106126663 B CN 106126663B
- Authority
- CN
- China
- Prior art keywords
- page
- fragment
- rendering
- preset
- resource
- 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
Classifications
-
- 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)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例提供了一种页面聚合方法及装置,涉及网络页面创建领域。所述页面聚合方法包括:接收移动设备发送的获取预定页面的获取请求,从页面服务器获取该预定页面的页面资源;根据预存的页面母版与适配版式的对应关系,查询与预定页面的页面母版对应的适配版式,根据查询到的该适配版式对该预定页面的各个页面碎片进行组装,得到组装页面;将组装页面反馈给移动设备。通过将页面服务器反馈的预定网页的页面母版转换成利用FreeMarker设计的适配版式,将该预定页面的页面碎片按照该适配版式进行组装,生成新的组装页面,从而达到了避免出现由iframe创建的聚合页面显示异常的现象的效果。
Description
技术领域
本发明涉及网络页面创建领域,特别涉及一种页面聚合方法及装置。
背景技术
页面聚合是指将原有页面的页面布局进行重新整合,生成的一个新的页面。通过页面聚合可以将各个功能的页面重新组合形成一个新的页面,促进页面所属站点的搜索引擎优化(Search Engine Optimization,SEO)优化和多业务线的拉通运营。
相关的页面聚合技术通常利用超文本标记语言(Hyper Text Markup Language,HTML)的iframe元素创建内联框架,该内联框架可以将多个其他页面的内容聚合到一个页面内,达到页面聚合的目的。
但iframe元素与移动设备中的浏览器存在兼容性问题,比如,当iframe元素与浏览器不兼容时,会导致由ifrme创建的聚合页面内的滚动条无法展示、聚合页面自适应手机屏幕大小较复杂等问题。
发明内容
为了解决相关技术的问题,本发明实施例提供了一种页面聚合方法及装置。所述技术方案如下:
第一方面,提供了一种页面聚合方法,应用于后台服务器中,所述方法包括:接收移动设备发送的获取预定页面的获取请求,从页面服务器获取所述预定页面的页面资源,所述页面资源至少包括所述预定页面的页面母版和页面碎片,所述页面母版用于定义各个页面碎片在所述预定页面中的位置;根据预存的页面母版与适配版式的对应关系,查询与所述预定页面的页面母版对应的适配版式,根据查询到的所述适配版式对所述预定页面的各个页面碎片进行组装,得到组装页面,所述适配版式为利用福瑞马克FreeMarker设计的页面版式;将所述组装页面反馈给所述移动设备。
本发明实施例提供的页面聚合方法,通过将页面服务器反馈的预定网页的页面母版转换成利用FreeMarker设计的适配版式,将该预定页面的页面碎片按照该适配版式进行组装,生成新的组装页面,由于FreeMarker通用性高,模版语言强大,解决了因iframe元素与浏览器不兼容,导致由iframe创建的聚合页面显示异常的问题;达到了避免出现由iframe创建的聚合页面显示异常的现象的效果。
结合第一方面,在第一方面的第一种可能的实施方式中,所述根据查询到的所述预定适配版式对所述预定页面的页面碎片进行组装,得到组装页面,包括:将所述预定页面的页面碎片添加至页面渲染队列中;从渲染资源线程池中提取出空闲的渲染资源线程,利用所述渲染资源线程对所述页面渲染队列中的页面碎片进行渲染;根据所述适配版式对渲染成功的页面碎片进行组装,得到所述组装页面。通过调用渲染资源线程对页面渲染队列中的页面碎片进行渲染,可以有效控制渲染页面碎片的渲染资源线程数量,避免页面碎片的碎片过多造成处理器的处理压力过大。
结合第一方面或者第一方面的第一种可能的实施方式,在第二种可能的实施方式中,所述根据查询到的所述预定适配版式对所述预定页面的页面碎片进行组装,得到组装页面,包括:对于所述页面资源中的每个页面碎片,检测是否存储有与所述页面碎片对应的碎片内容;当存储有与所述页面碎片对应的碎片内容时,根据所述碎片内容对所述页面碎片进行渲染;根据所述适配版式对渲染成功的页面碎片进行组装,得到所述组装页面。
结合第一方面、第一方面的第一种可能的实现或者第一方面的第二种可能的实现,在所述检测是否存储有与所述页面碎片对应的碎片内容之后,所述方法还包括:当未存储有与所述页面碎片对应的碎片内容时,根据所述页面碎片的统一资源定位符URL,获取所述页面碎片对应的碎片内容,根据所述碎片内容对所述页面碎片进行渲染;将所述碎片内容和所述页面碎片进行绑定存储。通过后台服务器获取到某一页面碎片的碎片内容时,将该碎片内容与该页面碎片进行绑定存储,当后台服务器获取到的页面资源中包含该页面碎片时,可以直接根据存储的该页面碎片的碎片内容对该页面碎片进行渲染,避免反复获取同一页面碎片的碎片内容,加快渲染页面碎片的速度。
结合第一方面、第一方面的第一种至第三种可能的实现,在第一方面的第四种可能的实现中,所述将所述碎片内容和所述页面碎片进行绑定存储,包括:判定所述碎片内容是否为可静态化的内容;当所述碎片内容是为可静态化的内容时,将所述碎片内容与所述页面碎片进行绑定存储。
结合第一方面、第一方面的第一种至第四种可能的实现,在第一方面的第五种可能的实现中,所述根据所述适配版式对渲染成功的页面碎片进行组装,得到所述组装页面,包括:根据所述适配版式对渲染成功的页面碎片进行组装;确定出渲染失败的页面碎片在所述适配版本中的位置,在所述位置显示预定内容。仅对渲染成功的页面碎片进行组装,在渲染失败的页面碎片在适配版本中的位置统一显示预定内容,加快页面组装的速度。
结合第一方面、第一方面的第一种至第五种可能的实现,在第一方面的第六种可能的实现中,所述方法还包括:在得到所述组装页面之后,在尚未存储所述预定页面所对应的组装页面与所述预定页面的页面资源之间的绑定关系时,将得到的所述组装页面与获取的所述预定页面的页面资源进行绑定存储;在已经存储所述预定页面所对应的组装页面与所述预定页面的页面资源之间的绑定关系时,利用获取的所述预定页面的页面资源替换已经存储的所述预定页面的页面资源。通过对及时存储和更新预定页面所对应的组装页面与该预定页面的页面资源之间的绑定关系,确保后台服务器中所存储的绑定关系的有效性。
结合第一方面、第一方面的第一种至第六种可能的实现,在第一方面的第七种可能的实现中,在所述从页面服务器获取所述预定页面的页面资源之后,所述方法还包括:查询是否存储有所述预定页面的页面资源;当存储有所述预定页面的页面资源时,检测所述获取到的页面资源和所述存储的页面资源是否一致;当所述获取到的页面资源和所述存储的页面资源一致时,将与所述存储的页面资源绑定的组装页面反馈给所述移动设备。通过后台服务器获取到预定页面的页面资源时,若获取到的该页面资源和存储的页面资源一致,则将与存储的该页面资源绑定的组装页面反馈给移动设备,提高后台服务器反馈组装页面的速度。
第二方面,提供了一种服务器,所述服务器包括处理器、与处理器相连的存储器和网络接口,所述处理器用于实现上述第一方面的页面聚合方法。
第三方面,提供了一种页面聚合装置,所述页面聚合装置包括至少一个单元,该至少一个单元分别用于实现上述第一方面的页面聚合方法所涉及的相应步骤。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个示例性实施例提供的页面聚合系统的结构示意图;
图2是本发明一个示例性实施例提供的后台服务器的结构示意图;
图3是本发明一个示例性实施例提供的页面聚合方法的流程图;
图4A是本发明一个示例性实施例提供的页面聚合方法的流程图;
图4B是本发明一个示例性实施例提供的页面聚合方法的示意图;
图4C是本发明一个示例性实施例提供的根据查询到的该预定适配版式对该预定页面的页面碎片进行组装,得到组装页面方法的示意图;
图4D是本发明一个示例性实施例提供的利用渲染资源线程对页面渲染队列中的页面碎片进行渲染方法的示意图;
图4E是本发明另一个示例性实施例提供的根据查询到的该预定适配版式对该预定页面的页面碎片进行组装,得到组装页面方法的流程图;
图4F是本发明一个示例性实施例提供的将碎片内容和页面碎片进行绑定存储方法的流程图;
图4G是本发明一个示例性实施例提供的根据适配版式对渲染成功的页面碎片进行组装,得到组装页面方法的流程图;
图4H是本发明一个示例性实施例提供的组装页面的示意图;
图5A是本发明一个实施例提供的后台服务器中的页面聚合装置的结构示意图;
图5B是发明再一个实施例提供的页面聚合方法的流程图;
图6是本发明一个实施例提供的页面聚合装置的框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
在本文提及的“模块”是指存储在存储器中的能够实现某些功能的程序或指令;在本文中提及的“单元”是指按照逻辑划分的功能性结构,该“单元”可以由纯硬件实现,或者,软硬件的结合实现。
请参考图1,其示出了本发明一个示例性实施例提供的页面聚合系统的结构示意图。该页面聚合系统包括:移动设备10、后台服务器11和页面服务器12。
后台服务器11可以分别与移动设备10和页面服务器12通过无线网络方式或有线网络方式连接,也可以通过路由器连接,这里所讲的无线网络方式可以为移动数据网络或无线保真(Wireless-Fidelity,Wi-Fi),或蓝牙等无线网络方式等。
这里所讲的移动设备10可以为移动电话,消息收发设备,平版设备等,对此本实施例不作具体限制。
这里所讲的后台服务器11可以是一台服务器,或者由若干台服务器组成的服务器集群,或者是一个云计算服务中心。类似的,这里所讲的页面服务器12也可以是一台服务器,或者由若干台服务器组成的服务器集群,或者是一个云计算服务中心。
请参考图2,其示出了本发明一个示例性实施例提供的后台服务器的结构示意图。该后台服务器11包括:处理器21、网络接口22、高速缓存器23、存储器24和总线25。
处理器21包括一个或者一个以上处理核心,处理器21通过运行软件程序以及模块,从而执行各种功能应用以及数据处理。
网络接口22用于供负载生成器与数据库系统进行通信。
存储器24与高速缓存器23分别通过总线25与处理器21相连。
存储器24可用于存储软件程序以及模块。
存储器24可以存储至少一个功能所需的应用程序模块26,应用程序模块26可以是接收模块261、执行模块262、发送模块263等。
接收模块261用于通过网络接口22接收移动设备发送的获取预定页面的获取请求,从页面服务器获取该预定页面的页面资源,该页面资源至少包括该预定页面的页面母版和页面碎片,该页面母版用于定义各个页面碎片在该预定页面中的位置。
执行模块262用于根据预存的页面母版与适配版式的对应关系,查询与预定页面的页面母版对应的适配版式,根据查询到的该适配版式对该预定页面的各个页面碎片进行组装,得到组装页面,该适配版式为利用福瑞马克FreeMarker设计的页面版式;以及将预定页面的页面碎片添加至页面渲染队列中;从渲染资源线程池中提取出空闲的渲染资源线程,利用该渲染资源线程对页面渲染队列中的页面碎片进行渲染;根据适配版式对渲染成功的页面碎片进行组装,得到组装页面;以及对于页面资源中的每个页面碎片,检测是否存储有与该页面碎片对应的碎片内容;当存储有与页面碎片对应的碎片内容时,根据该碎片内容对该页面碎片进行渲染;根据适配版式对渲染成功的页面碎片进行组装,得到组装页面;以及当未存储有与页面碎片对应的碎片内容时,根据该页面碎片的统一资源定位符URL,获取该页面碎片对应的碎片内容,根据该碎片内容对该页面碎片进行渲染;将碎片内容和页面碎片进行绑定存储;以及判定碎片内容是否为可静态化的内容;当碎片内容是为可静态化的内容时,将该碎片内容与页面碎片进行绑定存储;以及根据适配版式对渲染成功的页面碎片进行组装;确定出渲染失败的页面碎片在适配版本中的位置,在该位置显示预定内容;以及在得到组装页面之后,在尚未存储预定页面所对应的组装页面与该预定页面的页面资源之间的绑定关系时,将得到的该组装页面与获取的该预定页面的页面资源进行绑定存储;在已经存储预定页面所对应的组装页面与预定页面的页面资源之间的绑定关系时,利用获取的该预定页面的页面资源替换已经存储的该预定页面的页面资源;以及查询是否存储有预定页面的页面资源;当存储有预定页面的页面资源时,检测获取到的页面资源和存储的页面资源是否一致;当获取到的页面资源和存储的页面资源一致时,将与该存储的页面资源绑定的组装页面反馈给移动设备。
发送模块263用于通过网络接口22将组装页面反馈给移动设备。
存储器24可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
本领域技术人员可以理解,图1中所示出的后台服务器的结构并不构成对后台服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
请参考图3,其示出了本发明一个示例性实施例提供的页面聚合方法的流程图。本实施例以该方法用于如图1所示的页面聚合系统中来举例说明,由如图2所示的后台服务器11的处理器21执行下述步骤,该方法包括以下几个步骤:
步骤301,接收移动设备发送的获取预定页面的获取请求,从页面服务器获取该预定页面的页面资源,该页面资源至少包括该预定页面的页面母版和页面碎片,该页面母版用于定义各个页面碎片在该预定页面中的位置。
步骤302,根据预存的页面母版与适配版式的对应关系,查询与预定页面的页面母版对应的适配版式,根据查询到的该适配版式对该预定页面的各个页面碎片进行组装,得到组装页面,该适配版式为利用FreeMarker设计的页面版式。
步骤303,将组装页面反馈给移动设备。
综上所述,本发明实施例提供的页面聚合方法,通过将页面服务器反馈的预定网页的页面母版转换成利用FreeMarker设计的适配版式,将该预定页面的页面碎片按照该适配版式进行组装,生成新的组装页面,由于FreeMarker通用性高,模版语言强大,解决了因iframe元素与浏览器不兼容,导致由iframe创建的聚合页面显示异常的问题;达到了避免出现由iframe创建的聚合页面显示异常的现象的效果。
在实际应用中,页面聚合技术通常利用HTML的iframe元素创建内联框架,将多个其他页面的内容聚合到一个页面内,达到页面聚合的目的。为了避免当iframe元素与移动设备中的浏览器不兼容时,由iframe创建的聚合页面显示异常的现象,本实施例中后台服务器将页面服务器反馈的预定网页的页面母版转换成利用FreeMarker设计的适配版式后,将该预定页面的页面碎片按照该适配版式进行组装,生成新的组装页面后反馈给移动设备,以避免出现由iframe创建的聚合页面显示异常的现象。下面结合图4A、图4E、图4F和图4G对页面聚合方法进行描述。
请参考图4A,其示出了本发明一个示例性实施例提供的页面聚合方法的流程图。本实施例以该方法运用于如图1所示的页面聚合系统中来举例说明,该方法包括以下几个步骤:
步骤401,接收移动设备发送的获取预定页面的获取请求,从页面服务器获取该预定页面的页面资源。
页面资源至少包括该预定页面的页面母版和页面碎片。其中,预定页面是指页面碎片已经根据页面母版组装好的HTML页面。页面母版是指已经制作完成的网页框架,用于定义各个页面碎片在该预定页面中的位置。页面碎片是指一种动态网页技术标准文件(英文:Java Server Pages,JSP),在HTML页面中,包含该页面碎片的位置信息和各个页面碎片的JSP文件。每个页面碎片,由包含样式、图片以及脚本文件等的模版文件和Java对象,通过模版引擎技术自动输出对应的静态文件。
步骤402,查询是否存储有预定页面的页面资源。
后台服务器从页面服务器获取预定页面的页面资源后,存储该预定页面的页面资源。
当后台服务器从页面服务器获取该预定页面的页面资源后,查询是否存储有预定页面的页面资源,当后台服务器未存储有该预定页面的页面资源时,执行步骤403至步骤405。
在一种可能实现的方式中,当后台服务器未存储有该预定页面的页面资源时,执行步骤403至步骤405。
步骤403,当后台服务器未存储有该预定页面的页面资源时,根据预存的页面母版与适配版式的对应关系,查询与预定页面的页面母版对应的适配版式,根据查询到的该适配版式对该预定页面的各个页面碎片进行组装,得到组装页面。
适配版式由网页工作人员预先存入后台服务器中,该适配版式为利用FreeMarker设计的页面版式。
图4B是本发明一个示例性实施例提供的页面聚合方法的示意图,如图4B所示,当后台服务器11接收到移动设备10发送的获取预定页面30的获取请求时,后台服务器11从页面服务器12获取预定页面30的页面资源40,根据预存的页面母版与适配版式的对应关系,查询与预定页面30的页面母版41对应的适配版式42,根据查询到的适配版式41对预定页面30的各个页面碎片(页面碎片A、页面碎片B、页面碎片C和页面碎片D)进行组装,得到组装页面50。
当后台服务器未存储有该预定页面的页面资源时,说明后台服务器可能首次接收到移动设备发送的获取该预定页面的获取请求。由于后台服务器尚未存储预定页面所对应的组装页面与该预定页面的页面资源之间的绑定关系,因此在得到组装页面之后,可执行步骤404。
步骤404,将得到的该组装页面与获取的该预定页面的页面资源进行绑定存储。
仍参见图4B,当后台服务器11得到组装页面50后,将得到的组装页面50与获取的预定页面30的页面资源40进行绑定存储。
步骤405,将组装页面反馈给移动设备。
在另一种可能实现的方式中,当后台服务器存储有该预定页面的页面资源时,执行步骤406至步骤407。
步骤406,当存储有预定页面的页面资源时,检测获取到的页面资源和存储的页面资源是否一致。
根据需要,网页工作人员通常会定期更新页面,更新后的网页的页面资源可能会发生改变,比如页面母版更改或者页面碎片更改。当后台服务器检测到存储有预定页面的页面资源时,为了确保所存储的预定页面的页面资源的有效性,需要检测获取到的该预定页面的页面资源与存储的该预定页面的页面资源是否一致。
步骤407,当获取到的页面资源和存储的页面资源一致时,将与该存储的页面资源绑定的组装页面反馈给移动设备。
当获取到的该预定页面的页面资源和存储的该预定页面的页面资源一致时,说明该预定页面的页面资源未发生更改,后台服务器所存储的该预定页面的页面资源有效,因此后台服务器可以将与存储的该页面资源绑定的组装页面反馈给移动设备,提高后台服务器向移动设备反馈组装页面的速度。
步骤408,当获取到的页面资源和存储的页面资源不一致时,根据预存的页面母版与适配版式的对应关系,查询与预定页面的页面母版对应的适配版式,根据查询到的该适配版式对该预定页面的各个页面碎片进行组装,得到组装页面。
可选的,当后台服务器检测到获取到的页面资源和存储的页面资源不一致时,说明后台服务器已经存储预定页面所对应的组装页面与预定页面的页面资源之间的绑定关系。为了确保所存储的预定页面的页面资源的有效性,当后台服务器得到组装页面后,执行步骤409。
步骤409,利用获取的该预定页面的页面资源替换已经存储的该预定页面的页面资源。
综上所述,本发明实施例提供的页面聚合方法,通过将页面服务器反馈的预定网页的页面母版转换成利用FreeMarker设计的适配版式,将该预定页面的页面碎片按照该适配版式进行组装,生成新的组装页面,由于FreeMarker通用性高,模版语言强大,解决了因iframe元素与浏览器不兼容,导致由iframe创建的聚合页面显示异常的问题;达到了避免出现由iframe创建的聚合页面显示异常的现象的效果。
在本实施例中,通过对及时存储和更新预定页面所对应的组装页面与该预定页面的页面资源之间的绑定关系,确保后台服务器中所存储的绑定关系的有效性。
在本实施例中,通过后台服务器获取到预定页面的页面资源时,若获取到的该页面资源和存储的页面资源一致,则将与存储的该页面资源绑定的组装页面反馈给移动设备,提高后台服务器反馈组装页面的速度。
在一种可能实现的情况下,后台服务器通过调用渲染资源线程对页面渲染队列中的页面碎片进行渲染,来控制渲染页面碎片的渲染资源线程数量,避免页面碎片的碎片过多造成处理器的处理压力过大。请参见图4C,图4C是本发明一个示例性实施例提供的根据查询到的该预定适配版式对该预定页面的页面碎片进行组装,得到组装页面方法的示意图。
步骤408a,将预定页面的页面碎片添加至页面渲染队列中。
后台服务器获取到预定页面的页面碎片后,将所要渲染的页面碎片添加至页面渲染队列中。
步骤408b,从渲染资源线程池中提取出空闲的渲染资源线程,利用该渲染资源线程对页面渲染队列中的页面碎片进行渲染。
可选的,一条渲染资源线程渲染一块页面碎片。
图4D是本发明一个示例性实施例提供的利用渲染资源线程对页面渲染队列中的页面碎片进行渲染方法的示意图,如图4D所示,当用户利用移动终端访问预定页面时,后台服务器接收到预定页面发送的获取该预定页面的获取请求,该后台服务器则从页面服务器获取该预定页面的页面资源,将预定页面的页面碎片(页面碎片A、页面碎片B、页面碎片C)添加至页面渲染队列中,从渲染资源线程池中提取出空闲的渲染资源线程(渲染资源线程1、渲染资源线程2),调用提取出的空闲的渲染资源线程对页面渲染队列中的页面碎片进行渲染,由于渲染资源线程的数量为2条,因此后台服务器一次可以渲染两块页面碎片。
当页面碎片均被渲染后(该页面碎片可能被渲染成功、也可能被渲染失败),后台服务器将渲染该页面碎片的渲染资源线程放回渲染资源线程池中,供其他未被渲染的页面碎片使用。
步骤408c,根据适配版式对渲染成功的页面碎片进行组装,得到组装页面。
后台服务器仅对渲染成功的页面碎片进行组装,在渲染失败的页面碎片在适配版本中的位置统一显示预定内容,可以加快页面组装的速度。
在一种可能实现的方式中,请参见图4E,图4E是本发明另一个示例性实施例提供的根据查询到的该预定适配版式对该预定页面的页面碎片进行组装,得到组装页面方法的流程图。
步骤408d,对于页面资源中的每个页面碎片,检测是否存储有与该页面碎片对应的碎片内容。
当后台服务器获取到预定页面的页面资源时,查询是否存储有与该页面碎片对应的碎片内容。
可选的,当未存储有与页面碎片对应的碎片内容时,实施步骤408g至步骤408h。
步骤408e,当未存储有与页面碎片对应的碎片内容时,根据该页面碎片的URL,获取该页面碎片对应的碎片内容,根据该碎片内容对该页面碎片进行渲染。
当未存储有与页面碎片对应的碎片内容时,后台服务器根据该页面碎片的URL,从页面服务器获取该页面碎片对应的碎片内容,根据该碎片内容对该页面碎片进行渲染。
步骤408f,将碎片内容和页面碎片进行绑定存储。
图4F是本发明一个示例性实施例提供的将碎片内容和页面碎片进行绑定存储方法的流程图。如图4F所示,步骤408f可以由步骤408f1至步骤408f2代替。
步骤408f1,判定碎片内容是否为可静态化的内容。
可选的,可静态化的内容为与用户账户无关的内容。
步骤408f2,当碎片内容是为可静态化的内容时,将该碎片内容与页面碎片进行绑定存储。
可选的,当后台服务器存储有与页面碎片对应的碎片内容时,实施步骤408g至步骤408h。
步骤408g,当存储有与页面碎片对应的碎片内容时,根据该碎片内容对该页面碎片进行渲染。
当后台服务器获取到的页面资源中包含已存储碎片内容的页面碎片时,后台服务器可以直接根据存储的该页面碎片的碎片内容对该页面碎片进行渲染,避免反复获取同一页面碎片的碎片内容,加快渲染页面碎片的速度。
步骤408h,根据适配版式对渲染成功的页面碎片进行组装,得到组装页面。
需要说明的是,步骤408h与步骤408c相似,这里不再对步骤408h进行赘述说明。
图4G是本发明一个示例性实施例提供的根据适配版式对渲染成功的页面碎片进行组装,得到组装页面方法的流程图。如图4G所示,步骤408h可以由步骤408h1至步骤408h2代替。
步骤408h1,根据适配版式对渲染成功的页面碎片进行组装。
步骤408h2,确定出渲染失败的页面碎片在适配版本中的位置,在该位置显示预定内容。
图4H是本发明一个示例性实施例提供的组装页面的示意图,如图4H所示,当后台服务器渲染页面碎片D失败后,后台服务器根据页面碎片D中的信息确定出页面碎片D在适配版本60中的位置61,在位置61显示预定内容“内容获取失败...”。
请参考图5A,其示出了本发明一个实施例提供的后台服务器中的页面聚合装置的结构示意图。该页面聚合装置包括:统一页面编辑系统、页面聚合模块、功能门户和用户统一会话管理。
统一页面编辑系统从编辑系统数据库中获取预定页面的页面母板和页面碎片,将获取到的页面母板和页面碎片发送至页面聚合模块。当页面编辑系统中新增/修改页面碎片和页面母板时,统一页面编辑系统发送变更通知到页面聚合模块。
页面聚合模块实现对预定页面、页面碎片以及页面母板的管理。一个页面聚合模块相当于统一页面编辑系统中的一个站点。
功能门户用于实现预定页面的页面碎片的渲染、业务功能数据源的定制等功能。
用户统一会话管理用于实现用户会话的统一管理,使得页面聚合模块和各个功能门户统一共享用户会话信息,该用户会话信息为与用户相关的信息,比如:用户名、用户密码、用户资料等。
其中,页面聚合模块包含的功能有:页面适配、分布式页面渲染调度、页面碎片渲染和页面碎片组装。
页面适配功能用于实现对用户请求页面的适配过滤,包括逻辑页面到实际页面的适配,用户访问页面权限适配,记录用户的页面访问话单。
分布式页面渲染调度功能用于实现对页面渲染的并发执行,根据页面碎片的多少动态调度渲染资源线程执行页面碎片渲染过程。当用户访问页面时,将页面中的所有页面碎片构造为页面渲染队列请求渲染调度线程申请渲染,调度线程根据待渲染碎片数从渲染资源线程池中提取空闲的渲染资源线程,利用渲染资源线程对页面渲染队列中的碎片执行渲染过程。
页面碎片渲染功能用于实现对页面碎片的版式适配,请求功能门户完成页面渲染,在页面渲染队列中标识该页面碎片已完成渲染,并保存页面碎片的渲染结果。
页面碎片组装功能用于在渲染调度启动渲染资源线程后,当页面渲染队列中的全部页面碎片完成渲染后,对页面碎片进行组装,如存在碎片渲染失败,则继续抛出渲染异常(由雄猫Apache Tomcat捕获异常跳转至错误页面)。将页面碎片渲染结果按页面渲染队列顺序进行组装合并,对渲染失败的页面碎片不进行组装(页面中可能存在空白),返回组装完成的页面给用户。
请参考图5B,其示出了本发明再一个实施例提供的页面聚合方法的流程图,本实施例以该页面聚合发送方法应用于图5A所示的后台服务器中的页面聚合装置中来举例说明,该方法包括:
步骤501,页面汇聚模块接收移动设备发送的获取预定页面的获取请求。
步骤502,页面汇聚模块根据该获取请求,从页面服务器获取该预定页面的页面资源。
步骤503,页面汇聚模块将预定页面的页面碎片添加至页面渲染队列中,从渲染资源线程池中提取出空闲的渲染资源线程,利用该渲染资源线程对页面渲染队列中的页面碎片进行渲染。
步骤504,页面汇聚模块根据预存的页面母版与适配版式的对应关系,查询与预定页面的页面母版对应的适配版式。
步骤505,对于页面资源中的每个页面碎片,页面汇聚模块检测静态碎片缓存是否存储有与该页面碎片对应的碎片内容。
步骤506,当未存储有与页面碎片对应的碎片内容时,页面汇聚模块根据该页面碎片的URL,从功能门户获取该页面碎片对应的碎片内容。
步骤507,当功能门户反馈的碎片内容是为可静态化的内容时,页面汇聚模块将该碎片内容与页面碎片进行绑定存储。
步骤508,页面汇聚模块根据该碎片内容对该页面碎片进行渲染。
步骤509,该预定页面的页面碎片全部渲染完成后,页面汇聚模块根据查询到的该适配版式对该预定页面的各个渲染成功的页面碎片进行组装,得到组装页面。
步骤510,页面汇聚模块记录页面访问话单。
可选的,该页面访问话单为该预定页面各个页面碎片的点击量。
步骤511,页面汇聚模块向移动终端反馈组装页面。
请参考图6,其示出了本发明一个实施例提供的页面聚合装置的框图。该页面聚合装置可以通过软件、硬件或者两者的结合实现成为后台服务器11的全部或者一部分。该页面聚合装置可以包括:接收单元601、执行单元602和发送单元603。
接收单元601,用于实现上述步骤301的功能。
执行单元602,用于实现上述步骤302的功能。
发送单元603,用于实现上述步骤303的功能。
相关细节可结合参考上述方法实施例。
在另一个可选的实施例中,上述执行单元602,用于实现步骤401、中至少一个步骤的功能。
需要说明的是,上述接收单元601可以通过负载生成器110的处理器执行存储器中的接收模块来实现;上述执行单元602可以通过负载生成器110的处理器执行存储器中的执行模块来实现;上述发送单元603可以通过负载生成器110的处理器执行存储器中的发送模块来实现。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (14)
1.一种页面聚合方法,其特征在于,应用于后台服务器中,所述方法包括:
接收移动设备发送的获取预定页面的获取请求,从页面服务器获取所述预定页面的页面资源,所述页面资源至少包括所述预定页面的页面母版和页面碎片,所述页面母版用于定义各个页面碎片在所述预定页面中的位置;
将所述预定页面的各个页面碎片添加至页面渲染队列中;
根据所述各个页面碎片的数量,从渲染资源线程池中提取出空闲的渲染资源线程,利用所述渲染资源线程对所述页面渲染队列中的页面碎片进行渲染,每条渲染资源线程用于渲染一个页面碎片;
根据预存的页面母版与适配版式的对应关系,查询与所述预定页面的页面母版对应的适配版式;
根据查询到的所述适配版式对所述预定页面的各个渲染成功的页面碎片进行组装,得到组装页面,所述适配版式为利用福瑞马克FreeMarker设计的页面版式;
将所述组装页面反馈给所述移动设备。
2.根据权利要求1所述的方法,其特征在于,所述利用所述渲染资源线程对所述页面渲染队列中的页面碎片进行渲染,包括:
对于所述页面资源中的每个页面碎片,检测是否存储有与所述页面碎片对应的碎片内容;
当存储有与所述页面碎片对应的碎片内容时,利用所述渲染资源线程根据所述碎片内容对所述页面渲染队列中的页面碎片进行渲染。
3.根据权利要求2所述的方法,其特征在于,在所述检测是否存储有与所述页面碎片对应的碎片内容之后,所述方法还包括:
当未存储有与所述页面碎片对应的碎片内容时,根据所述页面碎片的统一资源定位符URL,获取所述页面碎片对应的碎片内容,利用所述渲染资源线程根据所述碎片内容对所述页面渲染队列中的页面碎片进行渲染;
将所述碎片内容和所述页面碎片进行绑定存储。
4.根据权利要求3所述的方法,其特征在于,所述将所述碎片内容和所述页面碎片进行绑定存储,包括:
判定所述碎片内容是否为可静态化的内容;
当所述碎片内容是为可静态化的内容时,将所述碎片内容与所述页面碎片进行绑定存储。
5.根据权利要求1-4中任一所述的方法,其特征在于,所述根据查询到的所述适配版式对所述预定页面的各个渲染成功的页面碎片进行组装,包括:
根据所述适配版式对渲染成功的页面碎片进行组装;
确定出渲染失败的页面碎片在所述适配版本中的位置,在所述位置显示预定内容。
6.根据权利要求1-4中任一所述的方法,其特征在于,所述方法还包括:
在得到所述组装页面之后,在尚未存储所述预定页面所对应的组装页面与所述预定页面的页面资源之间的绑定关系时,将得到的所述组装页面与获取的所述预定页面的页面资源进行绑定存储;
在已经存储所述预定页面所对应的组装页面与所述预定页面的页面资源之间的绑定关系时,利用获取的所述预定页面的页面资源替换已经存储的所述预定页面的页面资源。
7.根据权利要求1-4中任一所述的方法,其特征在于,在所述从页面服务器获取所述预定页面的页面资源之后,所述方法还包括:
查询是否存储有所述预定页面的页面资源;
当存储有所述预定页面的页面资源时,检测所述获取到的页面资源和所述存储的页面资源是否一致;
当所述获取到的页面资源和所述存储的页面资源一致时,将与所述存储的页面资源绑定的组装页面反馈给所述移动设备。
8.一种页面聚合装置,其特征在于,应用于后台服务器中,所述装置包括:
接收单元,用于接收移动设备发送的获取预定页面的获取请求,从页面服务器获取所述预定页面的页面资源,所述页面资源至少包括所述预定页面的页面母版和页面碎片,所述页面母版用于定义各个页面碎片在所述预定页面中的位置;
执行单元,用于将所述预定页面的各个页面碎片添加至页面渲染队列中;根据所述各个页面碎片的数量,从渲染资源线程池中提取出空闲的渲染资源线程,利用所述渲染资源线程对所述页面渲染队列中的页面碎片进行渲染,每条渲染资源线程用于渲染一个页面碎片;
所述执行单元,还用于根据预存的页面母版与适配版式的对应关系,查询与所述预定页面的页面母版对应的适配版式,根据查询到的所述适配版式对所述预定页面的各个渲染成功的页面碎片进行组装,得到组装页面,所述适配版式为利用福瑞马克FreeMarker设计的页面版式;
发送单元,用于将所述组装页面反馈给所述移动设备。
9.根据权利要求8所述的装置,其特征在于,所述执行单元还用于:
对于所述页面资源中的每个页面碎片,检测是否存储有与所述页面碎片对应的碎片内容;
当存储有与所述页面碎片对应的碎片内容时,利用所述渲染资源线程根据所述碎片内容对所述页面渲染队列中的页面碎片进行渲染。
10.根据权利要求9所述的装置,其特征在于,所述执行单元还用于:
在所述检测是否存储有与所述页面碎片对应的碎片内容之后,当未存储有与所述页面碎片对应的碎片内容时,根据所述页面碎片的统一资源定位符URL,获取所述页面碎片对应的碎片内容,利用所述渲染资源线程根据所述碎片内容对所述页面渲染队列中的页面碎片进行渲染;
将所述碎片内容和所述页面碎片进行绑定存储。
11.根据权利要求10所述的装置,其特征在于,所述执行单元还用于:
判定所述碎片内容是否为可静态化的内容;
当所述碎片内容是为可静态化的内容时,将所述碎片内容与所述页面碎片进行绑定存储。
12.根据权利要求8-11中任一所述的装置,其特征在于,所述执行单元还用于:
根据所述适配版式对渲染成功的页面碎片进行组装;
确定出渲染失败的页面碎片在所述适配版本中的位置,在所述位置显示预定内容。
13.根据权利要求8-11中任一所述的装置,其特征在于,所述执行单元还用于:
在得到所述组装页面之后,在尚未存储所述预定页面所对应的组装页面与所述预定页面的页面资源之间的绑定关系时,将得到的所述组装页面与获取的所述预定页面的页面资源进行绑定存储;
在已经存储所述预定页面所对应的组装页面与所述预定页面的页面资源之间的绑定关系时,利用获取的所述预定页面的页面资源替换已经存储的所述预定页面的页面资源。
14.根据权利要求8-11中任一所述的装置,其特征在于,所述执行单元还用于:
在所述从页面服务器获取所述预定页面的页面资源之后,查询是否存储有所述预定页面的页面资源;
当存储有所述预定页面的页面资源时,检测所述获取到的页面资源和所述存储的页面资源是否一致;
当所述获取到的页面资源和所述存储的页面资源一致时,将与所述存储的页面资源绑定的组装页面反馈给所述移动设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610489019.6A CN106126663B (zh) | 2016-06-28 | 2016-06-28 | 页面聚合方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610489019.6A CN106126663B (zh) | 2016-06-28 | 2016-06-28 | 页面聚合方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106126663A CN106126663A (zh) | 2016-11-16 |
CN106126663B true CN106126663B (zh) | 2019-12-24 |
Family
ID=57285139
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610489019.6A Active CN106126663B (zh) | 2016-06-28 | 2016-06-28 | 页面聚合方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106126663B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108153798B (zh) * | 2016-12-02 | 2022-02-18 | 阿里巴巴集团控股有限公司 | 页面信息处理方法、装置及系统 |
CN108021666A (zh) * | 2017-12-04 | 2018-05-11 | 北京百度网讯科技有限公司 | 页面适配方法和装置 |
CN110968989B (zh) * | 2018-09-27 | 2023-03-31 | 北京国双科技有限公司 | 在前端页面展示纠错信息的方法及装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9712560B2 (en) * | 2007-11-05 | 2017-07-18 | Cabara Software Ltd. | Web page and web browser protection against malicious injections |
CN104021131B (zh) * | 2013-03-01 | 2017-08-08 | 中国移动通信集团浙江有限公司 | 一种多维度页面的发布方法、装置及系统 |
CN103488732A (zh) * | 2013-09-17 | 2014-01-01 | 北京思特奇信息技术股份有限公司 | 一种静态页面生成方法及装置 |
CN103761317B (zh) * | 2014-01-27 | 2017-08-29 | 北京京东尚科信息技术有限公司 | 一种多线程异步渲染系统及方法 |
CN104951287B (zh) * | 2014-03-26 | 2018-09-11 | 可牛网络技术(北京)有限公司 | 一种生成网页的方法及装置 |
-
2016
- 2016-06-28 CN CN201610489019.6A patent/CN106126663B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN106126663A (zh) | 2016-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110263275B (zh) | 一种访问网页的方法、装置、移动终端和存储介质 | |
EP3229148B1 (en) | Website access method and device, and website system | |
US11184465B2 (en) | Network communication for establishing a QUIC connection | |
US8543713B2 (en) | Computing environment arranged to support predetermined URL patterns | |
CN104426925B (zh) | 网页资源获取方法及装置 | |
US20120317238A1 (en) | Secure cross-domain communication | |
CN112073405A (zh) | 网页数据加载方法、装置、计算机设备及存储介质 | |
US20110060727A1 (en) | Handling of expired web pages | |
CN107766509B (zh) | 一种网页静态备份的方法和装置 | |
US10158691B2 (en) | Method and apparatus for providing network resources at intermediary server | |
CN106126663B (zh) | 页面聚合方法及装置 | |
CN108255708B (zh) | 测试环境中访问生产文件的方法、装置、存储介质及设备 | |
US20150149888A1 (en) | Systems and methods for executing aspects of a document | |
US9264507B2 (en) | Cross domain communication channel | |
CN105743945A (zh) | 基于切换下载源的文件下载方法及系统 | |
US20180285467A1 (en) | Web server | |
US9665732B2 (en) | Secure Download from internet marketplace | |
CN104123143A (zh) | 用户控件加载系统及方法 | |
CN106294760B (zh) | 表单处理方法及服务器、客户端 | |
CN112818270B (zh) | 数据跨域传递方法、装置及计算机设备 | |
CN111079048A (zh) | 一种页面加载方法及装置 | |
CN111800511B (zh) | 同步登录态的处理方法、系统、设备及可读存储介质 | |
CN104317819A (zh) | 基于浏览器页面间跨域通信的方法和系统 | |
CN109101429B (zh) | 一种机顶盒的浏览器页面调试的方法及装置 | |
EP2760183A1 (en) | System for detecting hyperlink faults |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20200211 Address after: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee after: HUAWEI TECHNOLOGIES Co.,Ltd. Address before: 210000 Ande Gate No. 94, Yuhuatai District, Jiangsu, Nanjing Patentee before: Huawei Technologies Co.,Ltd. |
|
TR01 | Transfer of patent right |