网页中分段传输与渲染的详细讲解

网页中分段传输与渲染的详细讲解

最近遇到这方面知识,就自己找了一些资料,进行了一些总结

什么是分段传输?

当引入了一个http首部。这个首部标识了实体采用chunked编码传输,chunked编码可以将实体分块儿进行传输,并且chunked编码的每一块内容都会自标识长度。这给了web开发者一个启示,如果需要多个数据,而多个数据均返回较慢的话。可以处理完一块就返回一块,让浏览器尽早的接收到html,可以先行渲染。

如何分段传输?

我们既然知道了可以将网页一块儿一块儿的传送,那么我们就可以将网页进行改造,拿好一块儿需要的数据,便渲染一块儿,无需等待,而模板方面,自然也要进行拆分,供服务端拿一块儿的模板,就渲染一块儿出去

最后我们会发现:总的处理时长不变,但是采用了分段输出的网页,可以尽早的将一段HTML渲染到客户端,这样用户可以使用先到达的部分。另一方面,尽早的页面反馈,也可以减少用户等待的焦躁情绪。

综上,使用此种优化方法,可以提速网页的渲染速度。

分段传输适用场景

1、当页面的某些后端处理比较耗时的时候,可以试试采用分段传输,可以渲染一部分,就发送一部分到客户端,虽然总时长不变,但是浏览器在全部传输完之前不会处于干等状态。可以尽早的渲染并给予用户反馈。

2、后端处理渲染的数据,上方较快,下方较慢的情况(可以先行渲染上方较快的部分)

bigpipe

把最慢的部分放置于底部传过来就好了。于是有了一种加载思路,便是使用js回填的方式,后端可以先渲染快的模板,然后再渲染慢的模板。我们可以把页面上所有的块儿都架空,然后并行渲染,谁快谁就先渲染回填js。这样就可以达到并行且先到先渲染的目的.

bigpipe的适用场景

1 后端有较慢的数据处理,阻塞住了页面的情况下,且最慢的部分不是在网页的最后。(可以把最慢的部分变为回填)
2 后端有多块儿数据要并行处理的情况下(你也不知道哪块儿先回来了,所以先渲染一个架子。对于并行的请求,先回来的先flush回填)

以上就是网页中分段传输与渲染的详细讲解的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2198856.html

(0)
上一篇 2025年2月25日 22:14:13
下一篇 2025年2月22日 12:23:56

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • python中spyder是什么意思

    Spyder是用于Python编程的集成开发环境(IDE),专为数据科学研究人员设计。其核心功能包括交互式命令行、代码编辑器、变量浏览器、IPython集成和版本控制集成。它适用于Windows、macOS和Linux,支持跨平台使用。该I…

    2025年2月25日
    200
  • python pip什么意思

    pip是Python包管理器,用于管理Python软件包,包括安装、更新和卸载。pip通过在Python Package Index (PyPI) 中搜索和检索软件包,简化了软件包管理。要使用pip,需要在命令行中使用以下命令:pip [选…

    2025年2月25日
    200
  • vidmod在python中什么意思

    vidmod是一款Python视频处理库,提供以下功能:读取和解码视频视频编辑:剪辑、合并、调整大小和旋转视频转换:MP4、AVI、WebM等格式视频效果:淡入淡出、文本覆盖、模糊等视频稳定:使用光流分析和图像配准技术视频分析:提取视频元数…

    2025年2月25日
    200
  • python installer什么意思

    Python Installer 是用于打包和分发 Python 应用程序的工具,将应用程序及其依赖项打包到单个可执行文件中,简化部署、实现跨平台分发、隐藏源代码并减少依赖关系问题,通过编译应用程序文件、打包依赖项和创建启动器脚本来创建可执…

    2025年2月25日
    200
  • python idle是什么意思

    Python IDLE 是一个为 Python 编程语言设计的集成开发环境,它提供以下功能:交互式提示符:直接键入 Python 代码并立即获得结果。代码编辑器:带语法高亮和缩进的文本编辑器,用于编写和编辑 Python 代码。调试器:用于…

    2025年2月25日
    200
  • import os在python中的意思

    import os 语句在 Python 中用于导入 os 模块,该模块提供与底层操作系统交互的功能。功能包括:访问和操作文件系统对象控制进程和任务获取操作系统和硬件信息提供便携接口 import os 在 Python 中的含义 在 Py…

    2025年2月25日
    200
  • pycharm怎么配置解释器

    PyCharm解释器的配置过程如下:安装Python解释器,推荐使用Python 3.x版本。打开PyCharm并新建一个项目。设置项目解释器,选择已安装的Python解释器。将添加的解释器设为默认解释器。 PyCharm 配置解释器 配置…

    2025年2月25日
    200
  • 设置 Python 虚拟环境 (venv)

    Python 虚拟环境是管理项目依赖关系的好方法。它们允许您创建隔离的环境,您可以在其中安装特定于项目的包,而不会影响系统范围的 Python 安装。这篇博文将指导您使用 venv 设置 Python 虚拟环境。 分步指南 安装Python…

    2025年2月25日
    200
  • Kaniyam 的 Python 入门课程

    Python简介及其用法如何在 Windows、Linux 和 MacOS 中安装 python如何提出问题使用谷歌搜索连接在线论坛 – https://forums.tamillinuxcommunity.org/班级聊天 &…

    2025年2月25日
    200
  • 免费编程备忘单集合

    在编程世界中,备忘单是每个开发人员的秘密武器。无论您是初学者还是经验丰富的程序员,这些备忘单都可以帮助您快速找到所需的信息并提高您的工作效率。今天,我们整理了编程备忘单的终极集合,涵盖从 Python 到 Docker 的各种语言和工具。请…

    2025年2月25日
    200

发表回复

登录后才能评论