智唯高端建站是一家专注中小型企业网站建设、营销型网站建设、响应式网站建设公司

建站优化电话:138 2557 5516(免费SEO检测 保证收录 保证排名)
广州建站微信号
返回旧版
网站建设News
公司网站建设

提升网站访问速度的SQL查询优化技巧

关键词:广州建站 作者:智唯建站 | VISITORS: | 来源:智唯网络科技
06Dec
2017
你一定知道,一个快速访问的网站能让用户喜欢,可以帮助网站从Google 上提高排名,可以帮助网站增加转化率。如果你看过网站性能优化方面的文章,例如 设置服务器的最佳实现 、到

  你一定知道,一个快速访问的网站能让用户喜欢,可以帮助网站从Google 上提高排名,可以帮助网站增加转化率。如果你看过网站性能优化方面的文章,例如 设置服务器的最佳实现 、到 干掉慢速代码 以及 使用CDN 加载图片 ,就认为你的 WordPress 网站已经足够快了。但是事实果真如此吗?

  

提升网站访问速度的SQL查询优化技巧

 

  使用动态数据库驱动的网站,例如WordPress,你的网站可能依然有一个问题亟待解决:数据库查询拖慢了网站访问速度。

  在这篇文章中,我将介绍如何识别导致性能出现问题的查询,如何找出它们的问题所在,以及快速修复这些问题和其他加快查询速度的方法。我会把门户网站 deliciousbrains.com 出现的 拖慢查询速度的情况作为实际的案例。

  定位

  处理慢SQL查询的第一步是找到慢查询。Ashley已经在之前的 博客 里面赞扬了调试插件 Query Monitor ,而且这个插件的数据库查询特性使其成为定位慢SQL查询的宝贵工具。该插件会报告所有页面请求过程中的数据库请求,并且可以通过调用这些查询代码或者原件(插件,主题,WordPress核)过滤这些查询,高亮重复查询和慢查询。

  

提升网站访问速度的SQL查询优化技巧

 

  要是不愿意在生产安环境装调试插件(性能开销原因),也可以打开 MySQL Slow Query Log ,这样在特定时间执行的所有查询都会被记录下来。这种方法配置和设置存放查询位置相对简单。由于这是一个服务级别的调整,性能影响会小于使用调试插件,但当不用的时候也应该关闭。

  理解

  一旦你找到了一个你要花很大代价找到的查询,那么接下来就是尝试去理解它并找到是什么让查询变慢。最近,在我们开发我们网站的时候,我们找到了一个要执行8秒的查询。

  我们使用WooCommerce和定制版的WooCommerce软件插件来运行我们的插件商店。此查询的目的是获取那些我们知道客户号的客户的所有订阅。 WooCommerce是一个稍微复杂的数据模型, 即使订单以自定义的类型存储,用户的ID(商店为每一个用户创建的WordPress)也没有存储在 post_author, 而是作为后期数据的一部分。订阅软件插件给自义定表创建了一对链接。让我们深入了解查询的更多信息。

  MySQL是你的朋友

  MySQL有一个很方便的语句 DESCRIBE ,,它可以输出表结构的信息,比如字段名,数据类型等等。所以,当你执行 DESCRIBE wp_postmeta; 你将会看到如下的结果:

  

提升网站访问速度的SQL查询优化技巧

 

  你可能已经知道了这个语句。但是你知道 DESCRIBE语句可以放在SELECT, INSERT, UPDATE, REPLACE 和 DELETE语句前边使用吗 ?更为人们所熟知的是他的同义词 EXPLAIN ,并将提供有关该语句如何执行的详细信息。

  这是我们查询到的结果:

  

提升网站访问速度的SQL查询优化技巧

 

  乍一看,这很难解释。幸运的是,人们通过SitePoint总结了一个 理解语句的全面指南 。

  最重要的字段是 type ,它描述了一张表是怎么构成的。如果你想看全部的内容,那就意味着MySQL要从内存读取整张表,增加I/O的速度并在CPU上加载。这种被称为“全表浏览”—稍后将对此进行详细介绍。

  rows 字段也是一个好的标识,标识着MySQL将要不得不做的事情,它显示了结果中查找了多少行。

  Explain 也给了我们很多可以优化的信息。例如,pm2表( (wp_postmeta ),告诉我们是 Using filesort, 因为我们使用了 ORDER BY语句对结果进行了排序。如果我们要对查询结果进行分组,这将会给执行增加开销。

  可视化研究

  对于这种类型的研究, MySQL Workbench 是另外一个方便,免费的工具。将数据库用MySQL5.6及其以上的版本打开, EXPLAIN 的结果可以用JSON格式输出,同时 MySQL Workbench将JSON转换成可视化执行语句:

  

提升网站访问速度的SQL查询优化技巧

 

  它自动将查询的问题用颜色着重表示提醒用户去注意。我们可以马上看到,连接 wp_woocommerce_software_licences(别名l) 的表有严重的问题 。

  解决

关于网站制作,看看客户怎么说
***(匿名) 评价文章 广州企业网站制作公司网页设计水准

在最近几年,很多网页设计公司也都在网上开办了他们的网站, 广州网站制作公司 在网站上开办网站以来,受到了很多客户的关注,这家公司在之前的经营过程中,就受到了很...

***(匿名) 评价文章 佛山网站制作初期及建成后相关的注意要素是什么?

网站建立初期,对网站进行合理的筹划是使网站建立和推行获得事半功倍的效果的重要方面。现在呢,佛山建站公司智唯小编就为大家分享一下在网站筹划过程中必须要知道的事...

***(匿名) 评价文章 佛山网站制作对客户网站优化的建议

建站不难,难的是如何做好网站维护优化,这样才能让你的站点快速走入正轨,带来更好的效益,今天佛山智唯网络 为大家分析一下,如何做网站更好地优化站点,达到不错的排...

公司网站建设
Hi,Are you ready?
准备好开始了吗?
那就与我们取得联系吧

广州建站 感恩回馈

咨询送礼现在提交,将获得智唯网络策划专家免费为您制作
价值5880元《全网营销方案+优化视频教程》一份!
下单送礼感恩七周年,新老用户下单即送创业型空间+域名等大礼
24小时免费咨询热线0757-8108-9123
合作意向表
您需要的服务
您最关注的地方
预算
  • 验证码

直接咨询