PageSpeed是Google提供的网页性能工具。它可以帮你测试你的网页在pc端和移动端上有什么性能问题,帮助我们进行性能优化。通过它可以发现平时应该注意许多性能方面的细节。
有哪些性能问题?
1.使用浏览器缓存
在 HTTP 标头中为静态资源设置过期日期或最长存在时间,可指示浏览器从本地磁盘中加载以前下载的资源,而不是通过网络加载。
2.优化图片
适当地设置图片的格式并进行压缩可以节省大量的数据字节空间。
//PageSpeed上可以帮你对一些图片进行无损压缩减小图片的大小。
3.清除首屏内容中阻止呈现的 JavaScript 和 CSS
在以下资源加载完毕之前,网页上不会直接呈现任何首屏内容。请尝试暂缓或异步加载阻止资源,或者将这些资源的关键部分直接内嵌到 HTML 中。
//在做好基本优化后,加载顺序和按需加载就是优化页面速度的重要点。
4.压缩 CSS
5.压缩 HTML
6.压缩 JavaScript
7.启用压缩8.
使用 gzip 或 deflate 压缩资源可以减少通过网络发送的字节数。
8.按优先级排列可见内容
9.缩短服务器响应时间
建议
您应将服务器响应时间控制在200毫秒以内。有很多潜在因素都可能会延缓服务器响应,例如应用逻辑缓慢、数据库查询缓慢、路由缓慢、框架、库、资源CPU不足或内存不足等。您需要考虑所有这些因素,才能改善服务器的响应时间。要找到服务器响应时间过长的原因,首先要进行测量。然后,准备好相关数据,并参阅有关如何解决该问题的相应指导。问题解决后,您必须继续测量服务器响应时间,并解决将来出现的性能瓶颈问题。
收集并检查现有性能和数据。如果没有可用内容,请使用自动网页应用监测解决方案(可在市面找到一些托管的开源版本,它们适用于大多数平台)进行评估,或添加自定义的方法。
识别并修复首要的性能瓶颈问题。如果您使用的是热门网页框架或内容管理平台,请参阅有关性能优化最佳做法的文档。
监测并提醒任何将来出现的性能衰退问题!
10.避免使用着陆页重定向
概览
由于重定向会触发额外的HTTP请求响应周期,并会额外延长往返时间延迟,因此,将应用发出的重定向数量降至最低至关重要。避免HTTP重定向可以缩减用户等待网页加载的时间。我们建议您仔细斟酌自己网站的设计,看看可以在哪些方面提升网站性能。
以下是重定向模式的一些优劣示例:
优质:example.com使用响应性网页设计,无需重定向
中等:example.com -> m.example.com/home
劣质:example.com -> www.example.com -> m.example.com -> m.example.com/home
建议
按照Google的建议使用响应性网页设计,您的网站自然会避免重定向。
如果您的网站明确要求进行重定向,您必须执行以下两项操作:
1.使用HTTP重定向将采用移动用户代理的用户直接发送到对等的移动版网址,而不执行任何中间的重定向;并且
2.在您的桌面版网页中加入<link rel="alternate">标记来识别对等的移动版网址,以便Googlebot能够找到您的移动版网页。
在移动端还有些提升用户体验的
1.使用清晰可辨的字体大小
建议
首先,配置视口以确保字体将会在各个设备中按预期缩放。配置视口后,请实施下面这些额外的建议:
使用16 CSS像素的基准字体大小。根据要使用的字体的属性按需调整字体大小。
使用相对于基准字体的字体大小定义排版比例。
每行文字的字符之间需要留出一定的垂直空间,而且还可能需要根据每种字体进行不同的调整。我们通常建 议您使用浏览器默认的行高1.2em。
限制所用字体的数量以及排版比例:过多字体和字体大小会导致网页布局杂乱且过于复杂。
2.调整内容的尺寸,使其符合视口设置
即响应式设计
3.适当调整点按目标的尺寸
您应确保网站上最重要的点按目标(用户最常用的目标)足够大,即高/宽至少要达到48 CSS像素(如果您已正确配置您的视口),以便用户轻松点按。不常用链接的尺寸可以较小一些,但仍要与其他链接之间保持一定的距离,以免10毫米宽的手指不慎同时按到两个链接。用户无需张合手指(或依赖其他浏览器界面功能来排除手指点按干扰,如Chrome的弹出式放大镜),即可轻松准确地点按所需的按钮或链接。
4.避免使用插件
插件能帮助浏览器处理特殊类型的网络内容(例如,Flash、Silverlight和Java)。大多数移动设备不支持插件,而且插件是导致提供插件支持的浏览器挂起、崩溃和安全事件的主要原因。
5.配置 viewport
//配置视口<meta name=viewport content="width=device-width, initial-scale=1">
请避免使用minimum-scale、maximum-scale、user-scalable
总结
1.量
压缩文件(图片,html,css,js),减少连接数(雪碧图,css打包,js打包),减少重复情况(能用css的不用图片,代码复用)。
=============
2.顺序
优先加载首评页面的内容,先加载重要的和快的内容,类似大图需要时间载入的进行延迟动态加载。javascript按需加载。减少浏览器重绘。
3.用户体验
这个需要设计感,对不起我并没有。