我们在用户在 Drupal 中运行查询/视图时遇到问题,这有时会导致我们的网站冻结。发生冻结是因为查询导致数据库连接数上升到 400+,并且基本上只要站点超过 100 个数据库连接,站点就会非常慢并且没有响应。
我们正在使用 MySQL Red Hat Linux 运行 Amazon RDS
我们在前端应用服务器上有足够大的EC2,以及足够大的RDS。
我们现在解决这个问题的方法是找到有问题的查询,并杀死它。一旦查询被终止...我们的数据库连接将下降到大约 20,这是您在监视站点统计信息时看到的正常数量。
有没有办法停止有问题的查询并在它运行太长时间并消耗连接之前将其杀死?我试图在错误查询发生之前自动终止它,或者至少在 30 秒后意识到它是一个错误查询并终止它。