使用pagespeed检测网站性能,思考前端网站优化

这篇具有很好参考价值的文章主要介绍了使用pagespeed检测网站性能,思考前端网站优化。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

概述

最近在使用google search console 的过程中,无意中发现了一个检验网站性能的工具 pagespeed

使用pagespeed检测网站性能,思考前端网站优化
这个工具可以分别检测网站在移动端和桌面端的性能,最关键的是它不光能检测出性能的不足,还会将严重影响性能的东西列出来,并提供解决方案。

测试

以我博客首页为例进行测试
https://blog.csdn.net/glorydx
使用pagespeed检测网站性能,思考前端网站优化
总体来看85分,性能还是蛮不错的,但pagespeed还是给出了一些优化建议
使用pagespeed检测网站性能,思考前端网站优化

优化分析

一条条从前端的角度分析一下
缩短初始服务器响应时间
这个主要与域名解析与布局,服务器性能,首站资源请求数量相关。前端开发需要注意的是,尽可能将不需要的资源去掉,减少引用库的数量和大小,即按需引入,或者自己封装通用的js方法和组件等。
使用视频格式提供动画内容
大型 GIF 无法提供动画内容。通过将大型 GIF 转换为视频,您可以节省大量用户带宽。考虑将 MPEG4/WebM 视频用于动画,将 PNG/WebP 用于静态图像,尽量不使用 GIF,以节省网络字节。但这也可能会增加人力成本,比如视频的设计,网站是否需要更合理的布局等。
减少未使用的JavaScript
可能某些js被引入却并未使用,我们需要将其取消,前端开发应避免引入未使用的方法,组件,文件等,可以通过eslint进行规范。
移除阻塞未渲染的资源
小网站,关键css和js进行内联,会大大加快渲染速度

内联js

<html>
  <head>
    <script type="text/javascript">
    /* page.js的内容 */
    </script>
  </head>
  <body>
    <h1>Hello World</h1>
  </body>
</html>

内联css

<html>
  <head>
    <style tpe="text/css">
    .blue {
        color: blue;
    }
    </style>
  </head>
  <body>
    <div class="blue">
      Hello, world!
    </div>
  </body>
</html>

HTML5允许我们给 script 标签添加属性: “async” 来告诉浏览器不必停下来等待该脚本执行,什么时候下载完什么时候执行该脚本就可以了。这样的话浏览器会边下载page.js边渲染后面的内容。

<html>
  <head>
    <script type="text/javascript" src="page.js" async></script>
  </head>
  <body>
    <h1>Hello World</h1>
  </body>
</html>

对于那些首屏渲染不需要用到的CSS,我们可以依旧使用文件形式并在页面内容渲染完成后再加载。

<!doctype html>
<html>
  <head>
  </head>
  <body>
    <div>
      Hello, world!
    </div>
    <link href="other.css" rel="stylesheet" />
  </body>
</html>

采用新一代格式提供图片
如果网站图片较多,较大,WebP 和 AVIF 等图片格式的压缩效果通常优于 PNG 或 JPEG,因而下载速度更快,消耗的数据流量更少。

使用标签,是 H5 中的一个新标签,类似它也可以指定多个格式的资源,由浏览器选择自己支持的格式进行加载。

<picture class="picture">
  <source type="image/webp" srcset="image.webp">
  <img class="image" src="image.jpg">
</picture>

更多关于前端使用webp的相关内容,请前往 https://juejin.cn/post/7002031688570126366

确保文本在加载字体期间保持可见状态
避免在加载自定义字体时显示不可见文本的最简单方法是临时显示系统字体。通过包含font-display: swap在您的@font-face风格中,您可以在大多数现代浏览器中避免 FOIT

@font-face {
  font-family: 'Pacifico';
  font-style: normal;
  font-weight: 400;
  src: local('Pacifico Regular'), local('Pacifico-Regular'), url(https://fonts.gstatic.com/s/pacifico/v12/FwZY7-Qmy14u9lezJ-6H6MmBp0u-.woff2) format('woff2');
  font-display: swap;
}

图片没有给定宽高
我们都知道,图片在浏览器中,如果没有给定宽高,那图片自己的分辨率就是其在浏览器中的宽高。但这会增大页面布局所需的计算和速度。请为图片元素设置明确的宽度值和高度值,以减少布局偏移并改善 CLS。

注册unload事件监听
尽量避免使用unload事件处理某些逻辑。unload”事件不会可靠地触发,而且监听该事件可能会妨碍系统实施“往返缓存”之类的浏览器优化策略。请改用“pagehide”或“visibilitychange”事件。
使用pagespeed检测网站性能,思考前端网站优化

window.addEventListener('pagehide', (event) => {
  if (event.persisted) {
    console.log('This page *might* be entering the bfcache.');
  } else {
    console.log('This page will unload normally and be discarded.');
  }
});

如想了解更多详情,请前往https://web.dev/bfcache/?utm_source=lighthouse&utm_medium=lr#never-use-the-unload-event

采用高效缓存静态资源
静态资源是不常更改的,不需要时常请求服务器获取,我们可以采用浏览器缓存的方式。如localStorage,sessionStorage,cookie,HTTP 缓存等方式。

避免dom过大
在日常开发中需要注意,尽量减少使用不必要dom,这是由开发者的经验和业务量共同导致的。另外需要注意dom嵌套的深度,尽量减少其深度,和使用less或scss等样式预编译器一样,太深的层级会影响解析和编译的速度。

这是检测网站性能的线上网址,非常方便。https://pagespeed.web.dev/

使用pagespeed检测网站性能,思考前端网站优化文章来源地址https://www.toymoban.com/news/detail-467925.html

到了这里,关于使用pagespeed检测网站性能,思考前端网站优化的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 前端面试:【性能优化】页面加载性能、渲染性能、资源优化

    嗨,亲爱的前端开发者!在今天的Web世界中,用户期望页面加载速度快、交互流畅。因此,前端性能优化成为了至关重要的任务。本文将探讨三个关键方面的性能优化:页面加载性能、渲染性能以及资源优化,以帮助你构建更快速、响应更快的Web应用程序。 1. 页面加载性能:

    2024年02月11日
    浏览(19)
  • 实战经验:IIS网站服务器性能优化攻略

    Windows Server自带的互联网信息服务器(Internet Information Server,IIS)是架设网站服务器的常用工具,它是一个既简单而又麻烦的东西,新手都可以使用IIS架设一个像模像样的Web站点来,但配置、优化 IIS的性能,使得网站访问性能达到最优状态却不是一件简单的事情,这里我就介

    2024年01月19日
    浏览(45)
  • 性能优化 - 前端性能监控和性能指标计算方式

    性能优化 - 前端性能监控和性能指标计算方式

    利用LightHouse进行合理的页面性能优化 这篇文章主要讲解了如何使用 Lighthouse 。 这里把相关图片再展示一下: 我们可以看到 Lighthouse 计算的时候,会根据这几个维度的指标来计算总分。那么本篇文章,就主要讲解下前端性能监控相关的重要指标含义和计算方式。 在介绍指标

    2024年02月15日
    浏览(18)
  • 前端--性能优化【上篇】--网络优化与页面渲染优化

    link标签的rel属性设置dns-prefetch,提前获取域名对应的IP地址 用户与服务器的物理距离对响应时间也有影响。 内容分发网络(CDN)是一组分散在不同地理位置的 web 服务器,用来给用户更高效地发送内容。典型地,选择用来发送内容的服务器是基于网络距离的衡量标准的。 优

    2024年02月08日
    浏览(12)
  • PHP调优策略和性能测试工具的详细解析 - 大规模网站性能优化

    当面临大规模网站性能优化时,对PHP进行调优是至关重要的。这涉及到评估现有系统的性能瓶颈,并采取适当的策略来提高网站的响应速度和吞吐量。本文将深入探讨PHP调优的策略,以及可用于性能测试的工具。 使用缓存 :合理使用缓存可以减少数据库查询和计算操作,提

    2024年02月12日
    浏览(17)
  • 项目性能优化-内存泄漏检测与修改

    项目性能优化-内存泄漏检测与修改

    最近终于有空优化一波项目的性能了,第一波借助Android Studio自带的Profiler工具检测内存泄漏。 右侧带有绿色原点的就是此时运行的Profiler的SESSION,点击右侧MEMORY进入内存监控的详情模块 第三步中抓取一段时间后,会自动停止,并打开Heap Dump文件 可以看到抓取到2个会导致内存

    2024年02月11日
    浏览(11)
  • Web 前端性能优化之三:加载优化

    Web 前端性能优化之三:加载优化

    2、加载优化 1、延迟加载 本着节约不浪费的原则,在首次打开网站时,应尽量只加载首屏内容所包含的资源,而首屏之外涉及的图片或视频,可以等到用户滚动视窗浏览时再去加载。以上就是延迟加载优化策略的产生逻辑,通过延迟加载“非关键”的图片及视频资源,使得页

    2024年04月26日
    浏览(12)
  • 前端性能优化之浏览器渲染优化

    在当今互联网高速发展的时代,用户对于网页加载速度和性能的要求越来越高。作为前端开发者,我们需要关注并致力于提升网页的加载和渲染性能,以提供更好的用户体验。而浏览器渲染优化正是我们实现这个目标的关键。在本文中,我们将探讨一些关于浏览器渲染优化的

    2024年02月11日
    浏览(12)
  • 前端性能优化:缓存

    在快节奏的互联网时代,网站的加载速度直接影响用户体验和业务成功。而缓存作为性能优化的重要手段,可以大幅提升网页加载速度,减少服务器负担。本文将为你详解缓存的使用,帮助你优化前端性能,为用户呈现更快速、流畅的体验。 1. 什么是缓存? 缓存是指将已获

    2024年02月13日
    浏览(12)
  • 前端首屏性能优化

    代码压缩 GZIP 图片压缩 代码拆分 http强缓存 Sevice Worker 本地存储localStorage 合并请求 CDN DNS Prefetch 按需加载 懒加载 预加载 客户端内H5页面可考虑离线等方式 内容直出 js外链放在底部 css外链放在顶部 减少dom数量 使用webworker 长任务分片执行 减少回流重绘 减低css选择器复杂性

    2024年02月16日
    浏览(8)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包