php - 优化大型 WordPress 网站

标签 php mysql sql wordpress optimization

我正在考虑优化一个相当大的网站,我一直在添加和添加。数据库已经变得相当大(可能有 100,000 个帖子),并且速度开始有所减慢,并给出“Mysql 已消失”错误。我一直在阅读有关数据库优化的内容,并准备好一些人说您应该只在页面上使用 1-15 个查询。

人们是否认为在任何页面上只应使用少量查询的建议?

每次我使用诸如 get_permalink() 之类的 Wordpress 函数时,我都会创建一个新的查询和新的数据库连接,这种想法是否正确?

我有一些循环,实际上一次循环 100 多个用户,并在这些循环中使用诸如 get_user_meta() 之类的函数 - 那么这是否意味着我实际上进行了 100 个数据库查询,或者它们是否以某种方式缓存在 Wordpress 中?

最佳答案

对于此类问题,要做的就是将缓存从 Wordpress 手中夺走,并使服务器正常工作。

像 Wordpress 和 Drupal 这样的软件确实有自己的缓存系统,您应该启用它们,但即使使用它们,软件加载和服务页面仍然会产生一定的开销。

所以我建议你研究一个服务器缓存引擎,例如 Varnish .

这将大大减少大多数像您这样的网站的服务器负载;如果您一遍又一遍地对同一页面有很多请求,Varnish 将接管缓存,而 Wordpess 甚至不需要知道该页面正在被请求。不再为每个请求加载 PHP 和 Wordpress 核心,也不再为每个请求加载数据库 session 。

如果您的后端 CMS 软件开始运行缓慢,这是加快速度的最有效方法。

关于php - 优化大型 WordPress 网站,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18617324/

相关文章:

mysql - SQL查询以计算某些值在多行中出现的次数

mysql - Joomla 3.x 中的 SQL 错误 = 0

php - MySQL 的大量锁定查询

mysql - 如果一行满足特定条件则聚合行

php - IE8 : JavaScript is null or not an object error?

php - 使用ajax登录不工作

php - 从 php 脚本设置 cron 作业以运行另一个 php 脚本?

php - 平 : sending the full log by email?

php - 选择并插入或插入并忽略错误?

sql - Postgresql触发器计算总分