WordPress网站加载WAITING (TTFB) 时间过长解决办法

news/2024/5/9 21:48:19/文章来源:https://blog.csdn.net/qq1198507577/article/details/120399331

WordPress 刚刚安装的时候,性能是没问题的,我们安装了主题、插件、添加了一些小工具和菜单,然后我们就开始上传内容了,我们都很勤快

Waiting (TTFB) 时间

Time to First Byte 指的是浏览器开始收到服务器响应数据的时间(后台处理时间+重定向时间),是反映服务端响应速度的重要指标。

TTFB 时间多长算长

下面两个图中的 TTFB 时间分别是本站所在服务器的静态和动态网页 TTFB 等待时间。

根据测试,TTFB 时间如果超过了 500 ms,用户在打开网页的时候就会感觉到明显的等待。把 500 ms 以上认为是 TTFB 时间过长。

TTFB 过长的原因

  1. 服务器收到用户打开一个页面的请求时,首先要从数据库中读取该页面需要的数据,然后把这些数据传入到模版中,模版渲染后,再返回给用户。由于查询数据和渲染模版需要需要一定的时间,在这个过程没有完成之前,浏览器就一致处于等待接收服务器响应的状态。有些服务的性能比较低,或者优化没做好。
  2. 如果服务器到用户之间的网络不好,(比如,服务器在欧洲,用户在中国,用户打开网页的时候,请求需要跨越千山万水才能达到服务器),服务器接收到用户请求的时间过长。
  3. 页面在用户的浏览器中保存了过多的 Cookie,每次请求,这些 Cookie 都要发送到服务器,服务器都要处理这些 Cookie。

Waiting (TTFB) 时间过长的解决办法

  1. 缩短服务器响应时间:使用缓存,把 PHP 和 MySQL 的执行时间最小化。
  2. 如果是网络原因,换服务器是比较直接。或者使用CDN服务。
  3. 如果是 Cookie 的原因,可以通过修改应用程序,删除或精简Cookie内容,缩短有效期等。

本站使用的是 Cachify 插件 Memcached 缓存方式,直接把用户请求过的页面,缓存到了内存中,网站加载 Waiting (TTFB) 时间达到了 50 ms 左右,感兴趣的朋友可以用谷歌浏览器的调试工具查看一下。

Cachify 缓存插件描述

Cachify 通过将文章,页面和存档页面缓存为静态内容来优化页面加载。我们可以根据需要选择把静态内容缓存到 WordPress 数据库,硬盘,APC(PHP 缓存)或者 Memcached 中。用户再次访问页面时,直接从缓存中读取页面给用户,不用再查询数据库了。都知道,应用程序的性能瓶颈在数据库,我们把数据库查询降低到了 0,你说速度快不快?Cachify 插件只会缓存用户访问过的页面,长时间没有用户再次访问的页面,Cachify 会从缓存中把这个页面清除掉,确保缓存高效。

Cachify 缓存插件的特性

  • 适用于自定义文章类型。
  • 缓存方法:DB,HDD,APC 和 Memcached。
  • 通过 WordPress 工具栏中的 “刷新缓存” 按钮删除缓存。
  • 支持 WordPress 多站点。
  • 可以选择压缩 HTML 或 JavaScript。
  • 可以为用户浏览器和文章设置不缓存。
  • 手动和自动删除缓存。
  • 自动缓存管理。
  • 可以查看缓存状态的仪表板小部件。
  • Apache 和 Nginx 服务器的设置。
  • 通过钩子/过滤器扩展插件。

配合 Nginx 使用 Memcached 缓存 WordPress 页面

虽然 Cachify 也可以把页面缓存到数据库和硬盘中,但是我们不屑使用这些折衷的方式,毕竟服务器上除了 CPU,速度最快的就是内存,我们要的就是快、快、快。首先服务器使用的是 Nginx,然后服务器上安装了 Memcached 服务,确保这两个条件满足之后,安装并启用 Cacify 插件,在站点的 Nginx 配置文件中添加以下配置,重启 Nginx,

关于配置这里注意报错:

nginx: [emerg] "location" 指令在 /www/server/nginx/conf/nginx.conf:102 中是不允许的
nginx:配置文件/www/server/nginx/conf/nginx.conf 测试失败

"location"指令应该在'server'指令中,例如

server {listen       8765;location / {resolver 8.8.8.8;proxy_pass http://$http_host$uri$is_args$args;}error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;##在server内 粘贴进来}
}

然后在 WordPress 仪表盘的 Cachify 设置中,选择缓存方式为 Memcached,如下图,设置缓存时间,和缓存生成的时机(对登录用户不缓存、用户发表评论时清理缓存)。

然后退出后台,在前台刷新几下页面试试。不用看详细的参数,我们就可以发现,页面打开一次后,再次打开这个页面的速度刷刷的。有些朋友可能说是这浏览器缓存的问题,好,那我们打开调试模式,清理掉缓存再试试,看看具体的参数,快了多少相信是很明显的。

有朋友可能会有个疑问,如果都把内容缓存到了内存里面,内存会不会被撑爆?大家可以想象一下,内存里面缓存的其实都是页面的代码(不包括图片、视频这些多媒体),一个页面的代码能有多大?撑死 1M,1G 的内容能够缓存多少页面、大家可以计算一下。如果你的服务器的内存实在太小(比如128M),我只有劝你增加服务器内存了,毕竟,咱们做互联网的,再穷不能穷网站。

周广航SEO博客 :WordPress网站加载WAITING (TTFB) 时间过长解决办法

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_871241.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站运行缓慢的 12 个原因(以及如何修复它们)

如今用户希望网站速度快。当页面加载时间超过预期时,会对您网站的用户体验 (UX)产生负面影响。这很重要,因为每当您的用户体验受到影响时,您的转化率也会受到影响。您可能还会看到更高的页面放弃率和跳出率。额外的两秒加载时间可以将您网站的…

WordPress网站搬家换域名(数据迁移无丢失)

新站点 新域名 新数据库 利用插件2个步骤即可完成迁移替换等操作,算是和演示站克隆一样的效果,包括主题设置模板那些。百度上的WordPress迁移搬家教程方法都是千篇一律只管复制粘贴,不管情况是否一致正确可行,毫无人性可言。请各位…

谷歌广告联盟(Google Adsense)通过网站获利功能在线创收

Google作为全球最大搜索引擎,拥有全球近27亿用户的使用可以讲是最大的搜索引擎了。。可以说是国内某度没有办法比的。谷歌广告联盟(Google AdSense)门槛较高,一个用户只能申请一个谷歌账号,当你有了一个英文站之后最难的就是这个站的流量。 谷…

采集的网站如何做收录(采集站网站排名优化技巧)

采集站的主要工作是提升网站文章被百度的收录量,基本离不开文章组合工具,支持对词组、字句进行原创随机组合,做文章收录也并不难,只是需要一定的技巧。飓风算法之后采集站还能做吗?毫无疑问,当然可以。本人虽然不像一些大佬那么厉…

黑客是怎么攻击网站的(网站渗透入侵全部教程)

原标题《安全攻击溯源思路及案例》在攻防的视角里,进攻方会占据比较多的主动性,而防守方则略显被动,因为作为防守方,你永远也不知道攻击会在什么时候发生。你所能做的是,做好自己该做的一切,准备好自己该准…

12306铁道部订票网站瘫痪 技术惹的祸?

【IT168 评论】俗话说,新官上任三把火。铁道部掌门人易主,换来了中国铁路史上一个振奋人心的消息——网络实名购票,目标是解决中国铁路长期以来面临的“一票难求“的难题。受此影响,中国铁路订票官方网站12306.cn这个网络新生儿&a…

由12306.cn谈谈网站性能技术

12306.cn网站挂了,被全国人民骂了。我这两天也在思考这个事,我想以这个事来粗略地和大家讨论一下网站性能的问题。因为仓促,而且完全基于本人有限的经验和了解,所以,如果有什么问题还请大家一起讨论和指正。&#xff0…

这几个宝藏网站,一旦知道,你就离不开了!!!

谁说程序员只有代码? 今天就回归生活 为大家推荐几个鲜为人知的私藏小众网站,每一个都堪称日常神器 并且其中很多网站是完全免费的, 基本上都是非常良心好用,让你相见恨晚,用过就离不开。 有用的话记得分享给需要…

一篇从零开始、步骤完整的网站搭建教程(全篇7000字、102张截图说明,力求每一个人都能看懂,附源码)

从今年八月开始到现在自己也是从0开始做了有两个网站: 这中间也经常有不了解的地方需要去查。其实网上的资料也不少 但可能相对比较零散,需要反复的查来查去,费时又累心 那这次有时间就想着说写一篇从零开始、步骤完整的网站搭建教程 希望能帮助大家节省…

新手爬取51job,智联,boss网站职位信息总结和代码(小杜总结)

爬取要求: (1) 使用合适的数据保存手段保存爬取数据 (2) 记每条数据的爬取时间 (3) 实现数据的增量爬取 (4) 实现同时基于关键字和页面 URL 的去重元数据说明&#xff1a…

SEO必备工具—百度谷歌关键词采集工具(绿色版)

更多内容请到我的博客:http://mikameng.com 如果您做网站SEO优化, 想必您会经常和关键词打交道。 如果您想拥有海量的网站流量吗? 那采集海量的关键字是很有必要的。 如何快速,高效的获取百度和谷歌的海量关键词呢, 本人开发了…

MacOS解决访问百度很慢,但是其他网站正常的问题

话说这两天隔离结束回到公司宿舍,然后发现宿舍网过期了。。 充了钱之后发现其他设备访问百度都非常正常,但是唯独我的MacBook Pro访问百度巨慢。。 于是用搜狗搜了一下,发现可能是DNS的问题。。就跑到设置的网络这儿 然后在连接的网络里点…

Linux安装apache、发布网站、修改端口、配置第二顺位默认发布文件

1.安装apache服务器,并配置访问端口为9999。 安装apache yum install httpd -y 安装apache手册 yum install httpd-manual 将Apache服务添加到 开机自启中 systemctl start httpd systemctl enable httpd 设置永久允许http firewall-cmd --permanent --add-…

任选一小说网站,爬取任意一部小说,以记事本的形式保存。

1、任选一小说网站,爬取任意一部小说,以记事本的形式保存。 第一种情况(网址可能已失效): import requests from lxml import etree def get_url():url http://www.yuetutu.com/cbook_24378/r requests.get(url)tree etree.HTML(r.text)…

使用AJAX技术,结合监听器,实现页面中动态显示当前网站在线人数(电子工业出版社《Java Web程序设计》P171第九题)

导航 先上思维图纸第一步: 参考了课本(如题教材)实现了Listener第二步:个性化适配第三步:实现JSP界面总体问题: 刚看到的时候心里想的是写一个Servlet集成Listener的相关接口实现。然后JSP的JS每1ms获取一次doGet()中的数据实时刷…

curl网站开发指南

来源:http://www.ruanyifeng.com/blog/2011/09/curl.html curl网站开发指南 作者: 阮一峰 我一向以为,curl只是一个编程用的函数库。 最近才发现,这个命令本身,就是一个无比有用的网站开发工具,请看我整理…

怎样用SharePoint创建网站?

SharePoint能够让企业开发出智能的门户站点,无缝连接用户、团队及信息。下面,我们就将教你如何在sharepoint中创建网站: 创建网站 2. 在 SharePoint 主页上选择“ 创建网站”。 3. 在向导中对网站属性进行基本设置,如网站类型、网…

Linux 安装apache ,发布网站修改端口和配置第二顺位默认发布文件

1.安装apache 软件和手册 2.发布网站,找到默认的发布目录 用xftp 链接上自己的主机传送需要发布的网站到/var/www/html 目录下 使用命令ls查看是否有文件上传 上传成功打开浏览器,输入主机名,查看是否发布成功 3.修改默认端口 #主配置目录 …

js逆向入门网站分析(某空气质量监测平台)

文章目录 前言一、瞧一瞧网站是啥样呢二、新的开始,新的挑战2.1通过第一个 eval2.2分析第二个eval 三、模拟得到服务器传回的数据3.1如何得到关键js文件3.2如何模拟运行eval3.3匹配参数3.4发出请求3.5解密数据 前言 又要到放假的时间啦,学习了好一段时间…