如何减少我的 magento 应用程序的 TTFB(第一个字节的时间)?

How to reduce TTFB (Time to First byte) of my magento application?

请帮助我减少我的网站 (magento) 的 TTFB,它是 运行 在 VPS 专用主机上使用 CentOS 6.6 版(最终版)。

第一个字节的当前时间是:19.427 秒

让您入门的几件事:

  • 在 Magento 中启用全页缓存
  • 升级PHP:5.7 应该可以将 TTFB 减半,如果您无法使用较低版本,请尝试添加 HHVM。查看 http://zsuraski.blogspot.ca/ 以获取一些基准。
  • 添加数据库缓存:用于会话的 memcached、redis,它们是救命稻草。
  • 删除数据库日志记录。 Magento 喜欢打 DB
  • 使用 nginx 通过 apache 为您提供页面服务
  • HTTP/2:作为SPDY的奖励添加(即将被HTTP/2取代,敬请留意)
  • 可以在 nginx 和您的 php 层之间添加 Varnish 服务器。

还有更多微优化。一个好的目标是让页面在首屏内呈现 <100 毫秒。

只是缓存不会提高性能,它们会降低重复请求的硬件利用率。

在执行 Will Farrell 的其他建议时,您需要确定 Magento 代码中速度较慢的部分。为此,您需要启用 Magento Profiler – 内置的 Magento 工具,可让您查看 Magento 正在做什么以及它花费了大部分页面加载时间。

这里是如何启用和使用 Magento 分析器的详细方法:

http://tutorialmagento.com/how-to-reduce-time-to-first-byte-ttfb-and-speed-up-magento

要进行的主要更改是:

  1. Gzipping 组件(压缩)
  2. 优化图像
  3. 使用内容分发网络 (CDN)
  4. 缩小您的 JavaScript 和 CSS
  5. 尽量减少 HTTP 请求量

之前:3.5 到 5.5 秒(取决于一天中的时间)

之后:1.5 到 2.5 秒(取决于一天中的时间)

Reference