CN111488543B - 一种基于服务器端渲染的网页输出方法、系统和存储介质 - Google Patents

一种基于服务器端渲染的网页输出方法、系统和存储介质 Download PDF

Info

Publication number
CN111488543B
CN111488543B CN201910088878.8A CN201910088878A CN111488543B CN 111488543 B CN111488543 B CN 111488543B CN 201910088878 A CN201910088878 A CN 201910088878A CN 111488543 B CN111488543 B CN 111488543B
Authority
CN
China
Prior art keywords
webpage
rendering
server
degradation
page
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
Application number
CN201910088878.8A
Other languages
English (en)
Other versions
CN111488543A (zh
Inventor
赵淳煜
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Bilibili Technology Co Ltd
Original Assignee
Shanghai Bilibili Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Bilibili Technology Co Ltd filed Critical Shanghai Bilibili Technology Co Ltd
Priority to CN201910088878.8A priority Critical patent/CN111488543B/zh
Publication of CN111488543A publication Critical patent/CN111488543A/zh
Application granted granted Critical
Publication of CN111488543B publication Critical patent/CN111488543B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

本发明涉及一种基于服务器端渲染的网页输出方法、系统和存储介质,属于互联网技术领域。方法包括:服务器端读取网页页面降级的相关配置;根据读取结果,确定执行网页渲染的主体;所述的主体对网页进行渲染;浏览器端输出渲染后的网页页面;系统包括,服务器端,用于对网页页面降级进行配置,以及概率执行网页页面的渲染;浏览器端,用于根据服务器端的配置情况概率执行网页页面的渲染,以及输出渲染后的网页页面;存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现上述基于服务器端渲染的网页输出方法。与现有技术相比,本发明具有灵活配置、快速生效、实现稳定、易于维护以及实现方便等优点。

Description

一种基于服务器端渲染的网页输出方法、系统和存储介质
技术领域
本发明涉及互联网技术领域,特别涉及网页编辑领域,具体是指一种基于服务器端渲染的网页输出方法、系统和存储介质。
背景技术
随着互联网技术的发展,服务器端渲染(Server Side Render,简称SSR)已经成为一种常见的技术手段。服务器端渲染HTML的情况下,浏览器会直接接收到经过服务器计算之后的呈现给用户的最终的HTML字符串,这里的计算就是服务器经过解析存放在服务器端的模板文件来完成的,在这种情况下,浏览器只进行了HTML的解析,以及通过操作系统提供的操纵显示器显示内容的系统调用在显示器上把HTML所代表的图像显示给用户。
然而由于服务器端渲染的性能瓶颈在CPU,在各业务上线服务器端渲染功能时,无法准确预估服务器数量,此发明为解决各业务上线服务器端渲染功能时服务器数量估算错误导致服务器会奔溃的问题。
发明内容
本发明的目的是针对上述问题提供一种实现稳定、易于维护以及实现方便的基于服务器端渲染的网页输出方法、系统和存储介质。
本发明的目的可以通过以下技术方案来实现:
一种基于服务器端渲染的网页输出方法,所述的方法包括以下步骤:
(1)服务器端读取网页页面降级的相关配置;
(2)根据读取结果,确定执行网页渲染的主体;
(3)所述的主体对网页进行渲染;
(4)浏览器端输出渲染后的网页页面。
优选地,所述步骤(2)具体包括以下步骤:
(21)判断所述的相关配置是否存在网页页面降级配置,若否则进入步骤(22),若是则进入步骤(24);
(22)判断所述的相关配置是否存在网页页面降级概率参数,若是则进入步骤(23),若否则进入步骤(24);
(23)根据所述的网页页面降级概率参数确定执行网页渲染的主体;
(24)确定执行网页渲染的主体为浏览器端。
优选地,所述步骤(23)具体为:根据所述的网页页面降级概率参数,以相应的概率随机确定执行网页渲染的主体为浏览器端或服务器端。
优选地,所述网页页面降级概率参数包括0、50和100。
优选地,在所述的主体为服务器端时,所述步骤(3)具体为:服务器端直接对网页进行渲染。
优选地,在所述的主体为浏览器端时,所述步骤(3)具体为:服务器端输出网页页面模板,浏览器端根据所述的网页页面模板对网页进行渲染。
一种基于服务器端渲染的网页输出系统,所述系统包括:
服务器端,用于对网页页面降级进行配置,以及概率执行网页页面的渲染;
浏览器端,用于根据服务器端的配置情况概率执行网页页面的渲染,以及输出渲染后的网页页面。
优选地,所述服务器端:
用于存储网页页面降级的相关配置,所述相关配置包括网页页面降级配置和网页页面降级概率参数;
用于读取所述的相关配置,并根据读取结果确定执行网页渲染的主体;
用于根据所述的相关配置执行网页页面的渲染。
优选地,所述浏览器端:
用于根据服务器端的配置情况执行网页页面的渲染;
用于输出渲染后的网页页面。
一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现上述中任一项所述基于服务器端渲染的网页输出方法。
与现有技术相比,本发明具有以下有益效果:
(1)本发明提出的基于服务器端渲染的网页输出方法,服务器在进行网页渲染前,通过读取预置的网页页面降级的相关配置,可以概率性实现网页页面降级,即一定概率下通过浏览器端对网页页面进行渲染而非通过服务器端进行渲染,这样的工作方式可以大概率的避免服务器端渲染功能由于服务器数量估算不足而导致的服务器崩溃的问题,提高服务器端渲染的稳定性,同时也保障了网页渲染的正常实现。
(2)在确定网页渲染的主体的过程中,首先判断是否存在网页页面降级配置,如存在则直接通过浏览器端对网页进行渲染,而后再判断是否存在网页页面降级概率参数,如存在则根据参数实现概率性的网页降级,既能保证渲染的正常进行同时也能维护服务器的稳定性,最后如果二者均未配置,则默认浏览器端执行渲染,从而最大程度保证服务器的正常工作。
(3)在浏览器端执行渲染的过程中,浏览器端根据服务器端输出的模板对网页渲染,这样可以保证渲染的一致性,同时也保证了服务器的稳定性。
附图说明
图1为本发明基于服务器端渲染的网页输出方法的步骤流程图;
图2为实施例中网页输出过程的完整流程图。
具体实施方式
为了能够更清楚地理解本发明的技术内容,特举以下实施例详细说明。
请参阅图1所示,为本发明基于服务器端渲染的网页输出方法的步骤流程图。
在一种实施方式中,该基于服务器端渲染的网页输出方法,包括以下步骤:
(1)服务器端读取网页页面降级的相关配置;
(2)根据读取结果,确定执行网页渲染的主体,具体包括以下步骤:
(21)判断所述的相关配置是否存在网页页面降级配置,若否则进入步骤(22),若是则进入步骤(24);
(22)判断所述的相关配置是否存在网页页面降级概率参数,若是则进入步骤(23),若否则进入步骤(24);
(23)根据所述的网页页面降级概率参数确定执行网页渲染的主体,具体为:根据所述的网页页面降级概率参数(本实施例中分别设置为0、50和100,也可以根据实际情况具体设置其他处于0~100之间的值),以相应的概率随机确定执行网页渲染的主体为浏览器端或服务器端;
(24)确定执行网页渲染的主体为浏览器端;
(3)所述的主体对网页进行渲染,在主体为服务器端时,这一过程具体为:服务器端直接对网页进行渲染;而在主体为浏览器端时,这一过程具体为:服务器端输出网页页面模板,浏览器端根据所述的网页页面模板对网页进行渲染;
(4)浏览器端输出渲染后的网页页面。
除上述方法之外,本实施例中还提出了一种基于服务器端渲染的网页输出系统,包括:服务器端,用于对网页页面降级进行配置,以及概率执行网页页面的渲染;浏览器端,用于根据服务器端的配置情况概率执行网页页面的渲染,以及输出渲染后的网页页面。其中,服务器端:用于存储网页页面降级的相关配置,所述相关配置包括网页页面降级配置和网页页面降级概率参数;用于读取所述的相关配置,并根据读取结果确定执行网页渲染的主体;用于根据所述的相关配置执行网页页面的渲染。而浏览器端:用于根据服务器端的配置情况执行网页页面的渲染;用于输出渲染后的网页页面。以及提出了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现上述中任一项基于服务器端渲染的网页输出方法。
在实际应用中,本发明基于服务器端渲染的网页输出方法的具体实现方式,通过以下实施例说明。
实施例1
为了解决现有技术中服务器端渲染容易由于错误估计服务器数量而导致的服务器崩溃的情况,本实施例提出了一种基于服务器端渲染的网页输出方法,可以稳定的实现网页页面的渲染,同时不易引起服务器崩溃。
在本实施例中,为了避免服务器崩溃的情况,因此预先考虑通过在服务器中进行相应的配置,从而可以对网页页面实现降级,所谓的降级具体是指:超文本标记语言(HTML)输出的页面内容,是完全不由服务器端来执行代码,而是在浏览器端执行代码后输出HTML到浏览器上;与之相对的就有了非降级概念,即HTML输出的页面内容,是直接由服务器端执行代码渲染后的结果,如图2所示为本实施例中网页输出过程的完整流程。
从图中可以看出,本实施例中在进行网页输出的过程中,首先服务器端会预先读取内部配置,判断是否存在网页页面降级配置,如果存在则说明根据设定需要对网页页面执行降级,因此此时确定对网页进行渲染的主体应该是浏览器端而非服务器端,如果不存在则服务器端会进一步读取,判断是否存在网页页面降级概率参数,如果有则根据参数以相应的概率随机确定执行网页渲染的主体应该是服务器端还是浏览器端,具体来说,在本实施例中,降级概率参数分别设定为0、50和100,在降级概率参数为0时,说明网页页面降级的概率为0%,即不会进行页面降级,因此此时执行网页渲染的主体为服务器端;而降级概率参数为50时,则说明网页页面降级的概率为50%,即此时在进行网页渲染时,有一半的可能性是服务器端来执行渲染,另一半的可能性则为浏览器端来执行渲染,具体执行时以这50%的概率随机决定最终的渲染执行主体;同理,降级概率参数为100时,则说明100%使用降级页面,即渲染主体此时一定是浏览器端。降级概率参数的设定值不局限于这三个数值,一般来说根据实际情况设定为0~100之间的值均可,根据实际情况进行选择就好。
如果服务器端读取后发现服务器内既不存在网页页面降级配置也不存在网页页面降级概率参数的话,为了保证服务器端运行的稳定性,此时则默认网页页面进行降级,即浏览器端来执行网页页面渲染。需要注意的是,浏览器端执行网页渲染时,是以服务器端输出的网页页面模板为基础进行的渲染。
实施例2
本实施例中的网页输出流程与实施例1基本相同,唯一的区别在于,本实施例中的网页页面降级概率参数设定为20、40、60和80,即网页页面降级的概率分别为20%、40%、60%和80%。
在此说明书中,本发明已参照其特定的实施例作了描述。但是,很显然仍可以做出各种修改和变换而不背离本发明的精神和范围。因此,说明书和附图应被认为是说明性的而非限制性的。

Claims (8)

1.一种基于服务器端渲染的网页输出方法,其特征在于,所述的方法包括以下步骤:
(1)服务器端读取网页页面降级的相关配置;
(21)判断所述的相关配置是否存在网页页面降级配置,若否则进入步骤(22),若是则进入步骤(24);
(22)判断所述的相关配置是否存在网页页面降级概率参数,若是则进入步骤(23),若否则进入步骤(24);
(23)根据所述的网页页面降级概率参数确定执行网页渲染的主体;
(24)确定执行网页渲染的主体为浏览器端;
(3)所述的主体对网页进行渲染;
(4)浏览器端输出渲染后的网页页面。
2.根据权利要求1所述基于服务器端渲染的网页输出方法,其特征在于,所述步骤(23)具体为:根据所述的网页页面降级概率参数,以相应的概率随机确定执行网页渲染的主体为浏览器端或服务器端。
3.根据权利要求1所述基于服务器端渲染的网页输出方法,其特征在于,所述网页页面降级概率参数包括0、50和100。
4.根据权利要求1所述基于服务器端渲染的网页输出方法,其特征在于,在所述的主体为服务器端时,所述步骤(3)具体为:服务器端直接对网页进行渲染。
5.根据权利要求1所述基于服务器端渲染的网页输出方法,其特征在于,在所述的主体为浏览器端时,所述步骤(3)具体为:服务器端输出网页页面模板,浏览器端根据所述的网页页面模板对网页进行渲染。
6.一种基于服务器端渲染的网页输出系统,其特征在于,所述系统包括:
服务器端,用于存储网页页面降级的相关配置,所述相关配置包括网页页面降级配置和网页页面降级概率参数;用于读取所述的相关配置,并根据读取结果确定执行网页渲染的主体;用于根据所述的相关配置执行网页页面的渲染;
浏览器端,用于根据服务器端的配置情况概率执行网页页面的渲染,以及输出渲染后的网页页面。
7.根据权利要求6所述基于服务器端渲染的网页输出系统,其特征在于,所述浏览器端:
用于根据服务器端的配置情况执行网页页面的渲染;
用于输出渲染后的网页页面。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时,实现权利要求1至5中任一项所述基于服务器端渲染的网页输出方法。
CN201910088878.8A 2019-01-29 2019-01-29 一种基于服务器端渲染的网页输出方法、系统和存储介质 Active CN111488543B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910088878.8A CN111488543B (zh) 2019-01-29 2019-01-29 一种基于服务器端渲染的网页输出方法、系统和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910088878.8A CN111488543B (zh) 2019-01-29 2019-01-29 一种基于服务器端渲染的网页输出方法、系统和存储介质

Publications (2)

Publication Number Publication Date
CN111488543A CN111488543A (zh) 2020-08-04
CN111488543B true CN111488543B (zh) 2023-09-15

Family

ID=71796760

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910088878.8A Active CN111488543B (zh) 2019-01-29 2019-01-29 一种基于服务器端渲染的网页输出方法、系统和存储介质

Country Status (1)

Country Link
CN (1) CN111488543B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112328317A (zh) * 2020-08-31 2021-02-05 中盈优创资讯科技有限公司 一种基于node-canvas的服务端生成图表方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1805354A (zh) * 2006-01-23 2006-07-19 北京航空航天大学 一种基于远程渲染的三维模型网络发布方法
US8245125B1 (en) * 2011-11-30 2012-08-14 Google Inc. Hybrid rendering for webpages
CN104718770A (zh) * 2012-09-10 2015-06-17 卡尔加里科学股份有限公司 在客户端-服务器图像观看架构中的客户端侧图像渲染
CN105814903A (zh) * 2013-09-10 2016-07-27 卡尔加里科技股份有限公司 用于分布式服务器侧和客户端侧图像数据渲染的体系结构
CN106294594A (zh) * 2016-07-29 2017-01-04 东软集团股份有限公司 页面渲染方法及装置
CN109241471A (zh) * 2018-10-26 2019-01-18 珠海格力电器股份有限公司 页面渲染方法、服务器、浏览器和能源信息管理系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1805354A (zh) * 2006-01-23 2006-07-19 北京航空航天大学 一种基于远程渲染的三维模型网络发布方法
US8245125B1 (en) * 2011-11-30 2012-08-14 Google Inc. Hybrid rendering for webpages
CN104718770A (zh) * 2012-09-10 2015-06-17 卡尔加里科学股份有限公司 在客户端-服务器图像观看架构中的客户端侧图像渲染
CN105814903A (zh) * 2013-09-10 2016-07-27 卡尔加里科技股份有限公司 用于分布式服务器侧和客户端侧图像数据渲染的体系结构
CN106294594A (zh) * 2016-07-29 2017-01-04 东软集团股份有限公司 页面渲染方法及装置
CN109241471A (zh) * 2018-10-26 2019-01-18 珠海格力电器股份有限公司 页面渲染方法、服务器、浏览器和能源信息管理系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
wayne-zhu."服务器端渲染和客户端渲染".《博客园》.2018,全文. *

Also Published As

Publication number Publication date
CN111488543A (zh) 2020-08-04

Similar Documents

Publication Publication Date Title
US11347826B2 (en) Systems and methods for hosted applications
CN102915375B (zh) 一种基于布局分区的网页加载方法
US9444873B2 (en) Website compatibility shims
JP6073372B2 (ja) スクリプト・ファイル依存性およびロード時間の管理
CN105205080B (zh) 冗余文件清理方法、装置和系统
WO2016131311A1 (zh) 一种浏览器兼容方法及浏览器
US20150186496A1 (en) Comparing webpage elements having asynchronous functionality
CN111913705B (zh) 一种基于差异更新算法的JavaScript模板实现方法
CN105205077A (zh) 页面排版方法、装置及系统
JP4936295B2 (ja) コンピュータ・システムにより実行されるアクセシビリティ・メタデータの作成・拡張・検証を支援する方法
CN111488543B (zh) 一种基于服务器端渲染的网页输出方法、系统和存储介质
WO2017045480A1 (zh) 网页动画渲染方法及装置
US8860735B2 (en) Aligning script animations with display refresh
US20130067320A1 (en) Batch Document Formatting and Layout on Display Refresh
CN106919503B (zh) 应用程序的测试方法及装置
CN111581063A (zh) 数据处理方法、可读存储介质和电子设备
CN113050921A (zh) 一种网页转换方法、装置、存储介质和计算机设备
WO2020077765A1 (zh) 网页加载方法、中间服务器和网页加载系统
EP2431933A1 (en) Treatment controller
CN111488542B (zh) 一种网页输出方法、装置、系统和存储介质
CN114048407A (zh) 基于html格式的平级富文本内容生成方法及装置
CN114115897A (zh) 基于nodejs脚本动态生成项目本地可执行文件的方法
US20190163729A1 (en) Context aware cascade operations
CN117234623B (zh) 应用程序的页面主题更换方法、装置和电子设备
CN115878172A (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