我应该在每次查询前ping mysql服务器吗? [英] Should I ping mysql server before each query?

查看:69
本文介绍了我应该在每次查询前ping mysql服务器吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

所以我想知道是否应该对mysql服务器(mysqli_ping)进行ping操作,以确保在运行查询之前该服务器始终处于活动状态?

So I was wondering whether I should or should not ping the mysql server (mysqli_ping) to ensure that the server is always alive before running query?

推荐答案

出于以下三个原因,您不应该在查询之前对MySQL进行ping操作:

You shouldn't ping MySQL before a query for three reasons:

  1. 这不是一种可靠的检查服务器的方法,当您尝试执行查询时,服务器将启动,它很可能在ping响应和查询之间的时间内下降.
  2. 即使服务器已启动,您的查询也可能失败.
  3. 随着网站访问量的增加,您将为数据库增加很多额外的开销.在使用此方法来查看大量数据库资源而被ping浪费的企业应用程序中,这种情况并不少见.

处理数据库连接的最佳方法是错误处理(尝试/捕获),重试和事务.

The best way to deal with database connections is error handling (try/catch), retries and transactions.

有关MySQL性能博客的更多信息: 检查实时数据库连接被认为是有害的

More on this on the MySQL performance blog: Checking for a live database connection considered harmful

在该博客文章中,您将看到该MySQL实例上73%的负载是由应用程序检查数据库是否启动引起的.

In that blog post you'll see 73% of the load on that instance of MySQL was caused by applications checking if the DB was up.

这篇关于我应该在每次查询前ping mysql服务器吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆