”工欲善其事,必先利其器。“—孔子《论语.录灵公》
首页 > 编程 > 开始表演之旅。 TTFB

开始表演之旅。 TTFB

发布于2024-07-31
浏览:962

Starting the performance journey. TTFB

我们通过输入 www.ourwebsite.com 开始旅程,这将向我们的服务器发送一个 get 请求以检索页面的 HTML。所以我们的首要任务是加快检索速度。

此步骤由指标表示 - TTFB,第一个字节的时间

TTFB 不是最重要的,但作为第一个,意味着它将影响所有其他即将到来的指标。

TTFB 在客户端呈现的应用程序中比在服务器端呈现的应用程序中更重要,因为客户端完全依赖于填充它的 js 文件。

所有网站应争取 TTFB 为 0.8 秒或更短,您可以使用 lighthouse 或其他分析工具测量 TTFB,它将显示为“初始服务器响应时间”。

这里有一些优化TTFB的方法

  • 托管 - 确保您有良好的托管提供商、分配足够的内存空间、配置服务器设置。

  • 使用 CDN 提供静态文件、JS、HTML、CSS 和图像。

  • 分块发送资源

  • 为渲染关键资源发送 103 早期提示:“103 早期提示标头是服务器可以在后端忙于准备标记时发送到浏览器的早期响应代码。此标头可用于提示向浏览器告知存在渲染关键资源,页面应在准备标记时开始下载。”谷歌、web.dev

版本声明 本文转载于:https://dev.to/danish_ali_cdcbf83cbfb90b/starting-the-performance-journey-ttfb-5a9f?1如有侵犯,请联系[email protected]删除
最新教程 更多>
  • 如何在 Python 中优化海龟动画速度:为什么 ontimer() 胜过 True 和 Sleep()?
    如何在 Python 中优化海龟动画速度:为什么 ontimer() 胜过 True 和 Sleep()?
    Python 中的海龟动画性能优化专业人士经常会遇到海龟动画执行速度不理想的情况。虽然 tracer() 方法并在其中尝试各种数字可能看起来不够,但一个简单而有效的解决方案就在别处。要使用 Turtle 实现正常的动画速度,避免依赖 while True: 或sleep() 在事件驱动的环境中构建。...
    编程 发布于2024-12-23
  • 为任何中型线程创建 RSS 源!
    为任何中型线程创建 RSS 源!
    周末,我正在浏览 30 分钟内完成的项目创意,以便快速复习,并偶然发现了 codementor.io 那么,RSS Feed 到底是什么? RSS 代表“真正简单的联合” — 它是一种通过 XML 文件访问网站元数据的方法。 例如,Medium 上有大量的文章和出版物,将所有带有摘要的链接都放在一个...
    编程 发布于2024-12-23
  • HTML 格式标签
    HTML 格式标签
    HTML 格式化元素 **HTML Formatting is a process of formatting text for better look and feel. HTML provides us ability to format text without us...
    编程 发布于2024-12-23
  • 大批
    大批
    方法是可以在对象上调用的 fns 数组是对象,因此它们在 JS 中也有方法。 slice(begin):将数组的一部分提取到新数组中,而不改变原始数组。 let arr = ['a','b','c','d','e']; // Usecase: Extract till index p...
    编程 发布于2024-12-23
  • 如何在 PHP 中组合两个关联数组,同时保留唯一 ID 并处理重复名称?
    如何在 PHP 中组合两个关联数组,同时保留唯一 ID 并处理重复名称?
    在 PHP 中组合关联数组在 PHP 中,将两个关联数组组合成一个数组是一项常见任务。考虑以下请求:问题描述:提供的代码定义了两个关联数组,$array1 和 $array2。目标是创建一个新数组 $array3,它合并两个数组中的所有键值对。 此外,提供的数组具有唯一的 ID,而名称可能重合。要求...
    编程 发布于2024-12-23
  • 为什么我在 Laravel 中收到“Session store not set on request”错误?
    为什么我在 Laravel 中收到“Session store not set on request”错误?
    Laravel:解决“Session store not set on request”错误简介使用 Laravel 时,遇到“未根据请求设置会话存储”错误可能会令人沮丧。本文旨在提供对该问题的清晰解释和分步解决方案。错误是什么?“Session store not set on” request”...
    编程 发布于2024-12-23
  • 尽管代码有效,为什么 POST 请求无法捕获 PHP 中的输入?
    尽管代码有效,为什么 POST 请求无法捕获 PHP 中的输入?
    解决 PHP 中的 POST 请求故障在提供的代码片段中:action=''而不是:action="<?php echo $_SERVER['PHP_SELF'];?>";?>"检查 $_POST数组:表单提交后使用 var_dump 检查 $_POST 数...
    编程 发布于2024-12-23
  • 在 Go 中使用 WebSocket 进行实时通信
    在 Go 中使用 WebSocket 进行实时通信
    构建需要实时更新的应用程序(例如聊天应用程序、实时通知或协作工具)需要一种比传统 HTTP 更快、更具交互性的通信方法。这就是 WebSockets 发挥作用的地方!今天,我们将探讨如何在 Go 中使用 WebSocket,以便您可以向应用程序添加实时功能。 在这篇文章中,我们将介绍: WebSoc...
    编程 发布于2024-12-23
  • 如何在同一目录中组织一个库和 CLI 的 Go 项目?
    如何在同一目录中组织一个库和 CLI 的 Go 项目?
    在多包项目中组织代码在同时需要库和命令行界面 (CLI) 的 Go 项目中,经常会遇到以下问题在同一目录中有多个包。这样的项目结构:whatever.io/ myproject/ main.go myproject.go包 main 和 func main 对...
    编程 发布于2024-12-23
  • 如何在 Android 中选择后保持 ListView 项目突出显示?
    如何在 Android 中选择后保持 ListView 项目突出显示?
    如何在 Android 中选择后保持 ListView 项目突出显示在 Android 中,维护 ListView 项目的选定状态可以通过提供以下功能来增强用户体验:当前选择的清晰视觉指示器。然而,有时开发人员会遇到这样的问题:所选项目在某些事件(例如滚动或与 ListView 进一步交互)后失去突...
    编程 发布于2024-12-23
  • 如何使用自定义 CSS 在 Bootstrap 3 中创建全高列?
    如何使用自定义 CSS 在 Bootstrap 3 中创建全高列?
    Bootstrap 3 全高列:自定义 CSS 解决方案简介:创建Twitter Bootstrap 3 的全高布局可能具有挑战性。虽然Bootstrap的原生类不支持此功能,但可以使用自定义CSS来实现此效果。自定义CSS方法:设置100% 高度:将 body、container 和 row 元素...
    编程 发布于2024-12-23
  • 除了“if”语句之外:还有什么地方可以在不进行强制转换的情况下使用具有显式“bool”转换的类型?
    除了“if”语句之外:还有什么地方可以在不进行强制转换的情况下使用具有显式“bool”转换的类型?
    无需强制转换即可上下文转换为 bool您的类定义了对 bool 的显式转换,使您能够在条件语句中直接使用其实例“t”。然而,这种显式转换提出了一个问题:“t”在哪里可以在不进行强制转换的情况下用作 bool?上下文转换场景C 标准指定了四种值可以根据上下文转换为的主要场景bool:语句:if、whi...
    编程 发布于2024-12-23
  • 如何在不使用链接的情况下向 Span 元素添加工具提示?
    如何在不使用链接的情况下向 Span 元素添加工具提示?
    向不带链接的 Span 元素添加工具提示将鼠标悬停在 span 元素上时,通常需要向用户提供附加信息。这可以使用工具提示来实现,而不依赖于链接。解决方案:要使用内置 HTML 属性将工具提示添加到 span 元素,只需按如下方式使用 title 属性:<span title="My ...
    编程 发布于2024-12-23
  • 为什么我的 WebSocket 服务器在 Docker 化后无法连接?
    为什么我的 WebSocket 服务器在 Docker 化后无法连接?
    Docker化 WebSocket 服务器问题开发人员在尝试使用 Docker 容器化 WebSocket 服务器时遇到问题。服务器代码使用“connected”写入新连接,并且在容器外运行良好,但当放置在 Docker 容器内时,客户端会由于“连接重置”错误而出现恐慌,并显示错误消息“read t...
    编程 发布于2024-12-23
  • 如何修复 macOS 上 Django 中的“配置不正确:加载 MySQLdb 模块时出错”?
    如何修复 macOS 上 Django 中的“配置不正确:加载 MySQLdb 模块时出错”?
    MySQL配置不正确:相对路径的问题在Django中运行python manage.py runserver时,可能会遇到以下错误:ImproperlyConfigured: Error loading MySQLdb module: dlopen(/Library/Python/2.7/site-...
    编程 发布于2024-12-23

免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。

Copyright© 2022 湘ICP备2022001581号-3