从 2013 年初用这个独立博客开始,共进行了两次服务器迁移(bloghost 到 DigitalOcean、DigitalOcean 到 阿里云 ECS(附 9 折优惠码:e5ndko))、三次性能优化(2013 年 10 月、2015 年 5 月)。
这次优化后 Google PageSpeed Insights 评测结果已经比较满意了,网页版达到了 96。
博客是基于 WordPress 的,总结下到目前为止的优化:
前端请求的资源主要包括 html 文本、Css、JS、图片。主要优化包括减少连接数、减少每次返回的资源大小、改变连接优先级。
包括请求合并、图片合并(Css Sprite)、浏览器缓存。
通过 Better WordPress Minify 插件完成 CSS、JS 合并,几十个请求化为一个,减少这两类资源的请求数。 通过 Nginx 设置 Cache-Control 的缓存时间。
[crayon-5695cbdc2f156552430778/]如果是 Apache,配置可见:2013 年 10 月优化。
包括 Gzip 压缩、图片无损压缩。
通过 Nginx 设置 html、Css、JS Gzip 压缩级别等。
[crayon-5695cbdc2f165650582889/]如果是 Apache,配置可见:2013 年 10 月优化。
通过 ImageOptim(Mac 版) 无所压缩图片或 https://tinypng.com/ 有损高比例压缩图片。
JS 后置,通过 Better WordPress Minify 插件。
CSS import 用 link 等代替,目前采用的主题中有 Css 内 import Css 的情况,导致无法并发拉取内容,可直接替换内容或用 link 代替(可能有问题)。
后端主要包括服务器本身性能以及程序处理。
这次迁回国内主要也是因为 DigitalOcean 在国内不少城市访问速度过慢,甚至被屏蔽,在连接速度方面阿里云确实远远胜出。
阿里云 ECS(附 9 折优惠码:e5ndko) 只是普通硬盘,而之前的 DigitalOcean 则是固态硬盘,读取速度自然有差距,具体尚能测试对比。
主要通过缓存将动态网页请求改为直接取静态缓存内容。
通过更高效的 W3 Total Cache 插件完成静态缓存,替换了之前的 WP Super Cache 插件。