WordPress 博客提速最有效的方法是花钱

Last updated on 2016/12/31

自己搭建 WordPress 博客,最爱折腾的是主题,其次是优化和提速,我也不例外。

几年来,从不知名的虚拟空间,到国内博客圈高度认可的 Media Temple,到 Managed WordPress VPS;折腾过 W3 Total Cache、WP Super Cache 甚至收费的 WP Rocket 插件,到现在不用任何缓存插件;曾经使用过七牛、Cloudflare 和 MaxCDN 的内容分发。尝试和折腾下来,发现对于我这样的初级用户来说,优化和提速最有效的方法是花钱 -- 我早就该升级和迁移了。

页面加载时间和 “Perceived Load Time”

去年 10 月把实用类信息单独拿出来做了「美国攻略」,用 WordPress 搭建在 Media Temple 的 GRID 空间。从今年 3 月份开始,随着访问量增加(最高的时候单日 IP 超过 10K),连续两个月收到 GPU 超限的警告。GRID 空间每月租金 $20 美元,可是 GPU 超限居然要支付四五十美元,比月租还贵,于是决定升级,并同时考虑改善访问速度,因为通过 Pingdom 和 GTMetrix 的分析可以看到除了美国之外的地区加载速度较慢。

据我目测,国内做 WordPress 优化最厉害的是「我爱水煮鱼」的 Dennis,我在家里、公司、手机 4 G 上打开他的博客,速度几乎和静态页面一样快。不过,如果用 Pingdom 和 GTMetrix 等第三方服务来测试,他的博客似乎表现很糟糕,用 Pingdom 测试加载时间经常要二三十秒,原因是:

  • 这些服务测试的是「完整的加载时间」,包括所有的 JS 文件等。「我爱水煮鱼」博客使用了一些中国的服务,这些 JS 文件从其他国家加载很慢。
  • 然而,对于真人用户来说,真正重要的是 “Perceived Load Time” -- 即「可视化内容加载时间」。在后台运行的 JS 文件,只要正确设置,并不影响读者阅读。

Dennis 提供 WordPress 性能优化服务,分为两档:

  • 基础优化收费 RMB2,000
  • 深度优化收费 RMB5,000

我给 Dennis 发邮件咨询,之后考虑了一段时间,最终没有请他优化,原因是:

  • 这些优化必须针对 VPS 主机,像 Media Temple GRID 这样的虚拟空间因为权限不够,无法优化。可是对于我这样的初级用户来说,搭建 VPS 是很头痛的事情,我试用了几天 Linode,摸不清头绪。就算他可以帮忙做好初始配置和优化,以后的维护怎么办?我只是想写博客而已,没有时间和精力学习 VPS 的使用和管理。
  • RMB5,000(约合 USD760)是一笔不小的钱。我虽然愿意花、也花得起,但是上面已经说过了,后续维护怎么办?而且这笔钱用来升级主机的话已经可以大幅度提高网站速度 -- 虽然不如「我爱水煮鱼」博客那么快,但是已经很快了。

Managed WordPress VPS 主机

在寻找和比较新主机的过程中接触和试用了 “Managed WordPress VPS”,才发现自己这几年错过了多少信息 -- 我早就该升级和迁移了!

简单点说,这是针对自建 WordPress 推出的专人托管 VPS 服务:

  • 理论上来说拥有 VPS 权限、可以像 Dennis 那样做性能优化;
  • 实际上性能优化由服务商提前配置好,用户并不需要(也不能)做什么。

或者可以说,相当于 Dennis 这样的 WordPress 专家把很多 VPS 提前做好性能优化,卖给我这样的用户,并提供后续的维护服务。虽然不如自己的 VPS 那么自由 -- 对于我这样的初级用户来说自由没什么卵用,徒增烦恼 -- 但是性能比虚拟空间快很多。

我的选择和实际表现

我做了很多比较,包括找了不少英文评测、在线咨询了几家、试用了两三家,最后选择如下:

效果如何,大家应该很容易判断出来。以下是我 2016 年 6 月 22 日通过 Pingdom 和 GTMetrix 测试两个网站首页「可视化内容加载时间」的结果:

首页可视化内容加载时间对比

网站 美国攻略 美国日记
主机 Flywheel WP Engine
Pingdom 澳大利亚  约 0.8 秒  约 1.5 秒
Pingdom 瑞典  约 0.8 秒  约 1.0 秒
Pingdom 美国达拉斯  约 0.6 秒  约 0.3 秒
GTMetrix  约 0.7 秒  约 0.6 秒

Pingdom 的结果,拖到 “File Requests” 部分,来自 zaq.us/cn.derekyang.us 以及 CDN 的即是「可视化内容」,不考虑 Google Analytics、Adsense、Addthis 等外部 JS 文件。GTMetrix 的结果,点击 “Waterfall” 标签即可同样查看。

这个结果我个人比较满意,毫无疑问完胜 Media Temple 的 GRID 虚拟空间服务。从真实使用体验来说,以前有几位在中国的读者说打开「美国攻略」很慢,迁移之后我特意问了他们,反映是「的确快了很多!」此外,

  • Flywheel 和 WP Engine 都是在服务器端做缓存优化,所以「美国攻略」和「美国日记」都没有使用 W3 Total Cache、WP Super Cache 或 WP Rocket 等任何缓存插件。
  • 「美国攻略」使用了 Flywheel 整合的 MaxCDN 服务,「美国日记」因为图片很少(首页只有一张),甚至连 CDN 都没有用。

Flywheel 和 WP Engine 的价格和服务对比

Flywheel WP Engine
套餐 Tiny Personal Professional Personal Professional
每月价格 $15 $30 $75 $29 $99
可建站点 1 1 1 1 10
月访问量 5K 25K 100K 25K 100K
CDN +$10/月 +$10/月 免费 +$19.99/月 免费
硬盘 5G 10G 20G 10G 20G
带宽 250G 500G 1TB 无限 无限
SSL 免费 免费 免费 +$49.99/年 +$49.99/年

每月不到一百、甚至二三十美元(取决于访问量),比租个便宜的虚拟空间略贵,但是省事方便,

多少人在虚拟空间绞尽脑汁缓存、提速,浪费时间和精力不说,效果未必理想;加一点钱升级到 Managed WordPress VPS ,无需任何配置即可轻松超越。

此外,Managed WordPress VPS 通常更安全,因为有专门针对 WordPress 设置的安全措施。就 Flywheel 和 WP Engine 来说,

  • 二者都有免费的备份服务。我以前用 VaultPress 备份,现在也取消了。
  • Flywheel 客服主要通过邮件联系,反应速度较慢,但是态度不错;WP Engine 有即时在线的客服,反应速度很快,我目前联系过两个客服,一个不错,另一个态度生硬我很不喜欢。
  • WP Engine 的账户有两步验证(Two Step Authentication),Flywheel 暂时没有。
Derek Yang(戴睿可)来自湘西农村,毕业于北京大学,曾在广东中山电视台、北京盛唐传扬公关公司、迪思传媒集团工作,2012 年底移居美国首都华盛顿特区。博客主要是个人经历,因访客逐渐增多,很多实用的经验已迁移至新站「美国攻略」,以帮助更多刚来美国的人。添加微信请参见这里

33 responses to “WordPress 博客提速最有效的方法是花钱”

  1. 路易大叔 says:

    钱能解决一切问题

  2. Yao says:

    Good to know. Thanks.

  3. LanternD says:

    从Jekyll跳出来啦?我还在享受着Github的服务呢…

    • Derek Yang says:

      我原来是建在本地的 Jekyll,生成之后上传到空间。页面加载速度确实快得没法说,但是维护太麻烦了,尤其是因为我经常修改以前的文章 + 使用多台电脑。

      好在如今用 Managed VPS 发现速度其实也挺快……

    • Derek Yang says:

      到了我们这个年纪,时间和精力远远比一个月几十美元重要。不值得在虚拟空间上继续折腾了。VPS 我又玩不明白。

      我是因为以前没试过、不知道,要不然早就搬了。

  4. 弈兰 says:

    我看到Flywheel有东京和新加坡数据中心,请问对中国来说哪一个更合适呢?或者说哪一个比较快?

    • Derek Yang says:

      Flywheel 和 MaxCDN 合作;MaxCDN 在新加坡有数据中心;因此理论上来说使用东京的 Flywheel 数据中心 + MaxCDN 应该在亚太区有更好的表现。

      • 弈兰 says:

        Flywheel现在已经不能申请东京的服务器了,而新加坡的是Digital Ocean的数据中心,中国大陆的Ping普遍400左右,完全不能用。对Flywheel另一个不满意的是技术支持不是24小时的,出了问题不好解决,刚好他们上班时东八区这里的人该睡觉了,沟通起来很麻烦,一点问题来来回回要几天。

        Flywheel最让我满意的一点是他们的服务态度,积极热情并且有耐心,申请退款也十分顺利。

        • Derek Yang says:

          你在中国?访问 http://cn.derekyang.ushttps://zaq.us 速度如何?

          • 弈兰 says:

            美国日记速度还算不错,一般1~2秒,可能是图片比较少,但是Facebook和Gravatar的链接都加载失败了,如果能移除加载失败的链接,速度会更快。

            美国攻略网页加载速度和美国日记差不多,但图片加载时间较长,通常是文字显示完毕了但图片长时间加载不出,很多时候图片直接加载失败。

            比较奇怪的是,在我的网站上Gravatar头像都是很快加载出来的,土木坛子的头像也可以加载出来,但你这里基本都加载失败了。

          • Derek Yang says:

            土木坛子是把 Gravatar 缓存到了本地。我之前懒得弄,不过也可以改进一下。我这里没有 Facebook 的服务,你说的是分享按钮?那是 Addthis 的。

            美国攻略图片设置了延迟加载,但是加载失败比较奇怪,能否发给截屏给我看看?

  5. 弈兰 says:

    唯一的问题是不清楚这两个数据中心与中国大陆是不是直连,如果绕道的话就吃亏了。

  6. 弈兰 says:

    是的,那个Facebook的分享按钮虽然是显示出来了,但其实是加载失败的。

    北京时间的早上网络都比较通畅,早上打开美国攻略还是很快的,图片都很快显示完毕了。看来我之前说的加载慢在北京时间的晚上特别明显,可能是网络拥堵吧。

    现在没有发现图片加载失败的情况,以后再遇见可以截图给你。

    • Derek Yang says:

      好了,我这里 Gravatar 也缓存到本地了,哈哈。

      Facebook 分享按钮是没办法修改的,我又不能造一个能绕过 GFW 的 Facebook。好在我的读者大多在美国,何况就算对于中国的读者来说,按钮加载失败了也不影响阅读。

  7. 老杨 says:

    除了花钱,技术也得花点才行……

  8. 木瓜园 says:

    花钱能解决的问题都不是问题,哈哈

  9. 一切优化都是基于IP少,带宽小,缺钱~

  10. yearliny says:

    有些人也乐于折腾,喜欢通过自己的手动操作,创造出满意的结果。

  11. 胡德杰 says:

    博主说的是至理呀!确实,有那个时间折腾,不如多花点钱来得直接,而且,效果也更好!年轻时觉得钱重要,时间无所谓;现在情愿花点钱,省出点时间,就算是休息也是好的!

  12. 胡德杰 says:

    从我访问的情况来看,日记比攻略那个站打开速度要快很多~,看来,钱真的没有白花的!

  13. 佐仔 says:

    我的在GTMetrix测试的速度是1.2s,PageSpeed Score (100%) :A,YSlow Score(93%) :A。
    还在可接受之内,就这样吧,我用的是VPS。

    • Derek Yang says:

      你网站在我这里访问速度也很快。VPS 我没时间和精力折腾。

      这个主题本身似乎也挺快。我删除了部分 JS,原因是会导致 Addthis 无法正确加载;删除之后速度似乎略微慢了一些。

      • 佐仔 says:

        删除了部份JS反而会变慢?我是把所有的CSS、JS文件本地化。

        • Derek Yang says:

          有些 JS 可以提高(切换页面的)加载速度。我不懂 JS,但猜测主题自带预先加载页面的功能(类似 InstantClick),因此切换页面速度更快,但同时导致网页的 URL 工作不正常。

          具体到我的网站来说,从网页A点击打开页面B,addthis 分享的信息和 URL 还是停留在网页A,需要手动刷新才会切换到网页B。我不知道如何修复,因此删除了一个 JS,这导致预加载功能失效、页面打开速度略微降低。

  14. 凯哥自媒体 says:

    挺好的,感谢博主的分享。

  15. Martin says:

    博主你好!请问你的美国攻略网站用的是什么Theme?

Leave a Reply

Your email address will not be published. Required fields are marked *