我在一个WordPress网站上工作,每天可以获得大约100K的页面浏览量。我们使用Varnish作为缓存层。最近,我们遇到了一个问题,似乎随机地,MySQL性能会慢下来并降低我们的应用程序。这是昨天发生的停电中New Relic的图表:
这在过去一周发生过两次。该网站将运行良好一周,没有任何人接触生产服务器,然后这发生了无处不在。通常的响应时间约为500毫秒,这里它的峰值为60K毫秒(!)。通过停止apache,让数据库冷却,然后启动apache来解决问题。
不是运行更多查询,或者运行特定的慢查询并导致此问题。如果我采取任何慢速查询' New Relic正在报道并且在任何时候运行它们,它们正在快速发展。这是同一时间段内MySQL吞吐量的图表:
我已经检查了WordPress挂钩和插件的统计信息,一切似乎都很正常。
我的问题是,我应该从哪里开始寻找?哪些MySQL设置可能导致此问题?它甚至可能是MySQL问题,还是更可能是应用程序问题?
答案 0 :(得分:0)
拥有如此高流量的网站,并且因为你提到了清漆,我假设你有一个VPS /云/专用托管,有一个linux发行版和ssh(root)访问。
在这种情况下,您应该开始检查的第一件事就是服务器错误日志(其位置会根据您使用的操作系统而有所不同 - 您可以根据需要进行搜索)。这可以给你一个关于问题根源的暗示。在停电期间检查顶部负载(foo
)也可能有所帮助。
对于mysql配置/性能调优和优化,您可以尝试以下方法:
安装mtop实用程序并运行它
试试这个方便的工具:
安装并让它运行> 24小时。然后,它将根据您服务器的mysql使用模式为您提供调整mysql配置的具体建议。