首页 技术教程建站经验正文

WordPress卡顿耗资源优化速度极致方案,十万篇文章数据库优化指南

WordPress卡顿耗资源优化速度极致方案

WordPress网站访问慢,一般是数据库查询语句执行慢导致的。

例如:查询语句如下

SELECT wp_posts.IDFROM wp_postsWHERE 1=1AND wp_posts.post_type = 'post'AND ((wp_posts.post_status = 'publish'))ORDER BY wp_posts.post_date DESCLIMIT 0, 5
/* 受影响记录行数: 0  已找到记录行: 5  警告: 0  持续时间 1 查询: 15.016 秒. */

上面一条语句执行要15秒,这未免太慢了。

通过改WordPress代码中的查询语句,肯定可以解决这些问题,但问题是,如果要改sql语句,势必要改很多代码,这个方法我不推荐。

有的人可能说加索引,但加上索引后,发现执行还是很慢。原因是,有的查询语句未必会用到索引,所以,这个方法我也不推荐。

其实WordPress慢的原因,很大一部分跟wp_Posts表查询有关,仔细观察这个表,你会发现这个表引擎是InnoDB,MySQL有个非常适合查询的表引擎是MyISAM,如果把这个表引擎改为MyISAM是否会更快了?

改变表引擎:

ALTER TABLE `wp_posts`
	COLLATE='utf8mb4_unicode_520_ci',
	ENGINE=MyISAM,
	CONVERT TO CHARSET utf8mb4 COLLATE 'utf8mb4_unicode_520_ci';

改完后,再次执行查询语句

/* 受影响记录行数: 0  已找到记录行: 5  警告: 0  持续时间 1 查询: 0.750 秒. */

速度提升了,由15.016秒变为了0.750秒,这速度已经很快了。

为了测试,那我就将整个数据库中的所有表引擎都改为MyISAM试试。

改完之后,WordPress后台文章列表页面基本上可以4秒左右打开。

后台标签页面由于排序导致页面加载慢,可以通过代码修改排序规则。

SELECT t.term_idFROM wp_terms AS tINNER JOIN wp_term_taxonomy AS ttON t.term_id = tt.term_idWHERE tt.taxonomy IN ('post_tag')ORDER BY t.name ASCLIMIT 20
/* 受影响记录行数: 0  已找到记录行: 20  警告: 0  持续时间 1 查询: 18.485 秒. */

这个只能改查询语句了。

add_filter('get_terms_args',function ($args, $taxonomies ){
    $args['orderby'] = 'term_id';
    return $args;},10,2);

强制将排序改为按照term_id排序,现在,查询肯定很快。

上面那条语句放弃优化,2秒可以接受。

基本上网站后台页面没有之前那么卡了,至于前台页面的优化,需要根据主题代码来优化,这边推荐安装缓存加速类的插件解决前台访问慢的问题。



1、使用wpjam工具,屏蔽国外字体fonts、js,关闭不必要的功能如xmlrpc、自动保存多份等


2、开启缓存opcache、memcached(或redis)。
3、动静态分离,图片、js、CSS这些分流到子域名上(可用对象存储自动回源),并放cdn上(公共库投毒频发,慎用)


4、独立MySQL数据库,别再用localhost,小机资源运行mysql本来就吃力;


5、激活使用WordPress Multisite功能,定期开启一个子站点作为主站,以达到数据库分表,特别是posts、postmeta这两个最影响读写的数据表。

6、高阶用途可以结合以上各种方法,再配合WordPress官方的HyperDB插件或 LudicrousDB ,做数据库读写分离。这条设置比较复杂,需要主备数据库同步,我没用过。

更多优质资源请微信扫码访问:盘姬资源网小程序


免责声明

本文仅代表作者观点,不代表本站立场,内容的真实性请自行甄别谨防上当受骗。

本站采用 CC BY-NC-SA 4.0 国际许可协议 进行许可,转载或引用本站文章应遵循相同协议。

  1. 本站提供的一切软件、教程和内容信息仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。

  2. 本站信息来自网络收集整理,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。如果您喜欢该程序和内容,请支持正版,购买注册,得到更好的正版服务。我们非常重视版权问题,如有侵权请邮件与我们联系处理。敬请谅解!

  3. 本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报。

  4. 如果有侵犯版权的资源请尽快联系站长,我们会在24h内删除有争议的资源。

站长邮箱:xm520vip@gmail.com

本文链接:https://123.775n.com/post-2492.html

发表评论

评论列表(0人评论 , 28人围观)
☹还没有评论,来说两句吧...

会员中心

歆梦资源网(775n.com)-探索精品网络资源的宝藏之地

https://123.775n.com/

| 京ICP备100000000

Powered By 某某网络科技有限公司

使用手机软件扫描微信二维码

关注我们可获取更多热点资讯