假设我每2秒执行一次查询,是对每个请求打开连接,还是在应用程序(服务器)停止之前保持连接活动?
发布于 2015-01-02 21:44:13
根据我的经验,建立连接不太可能成为mysql服务器的瓶颈(mysql中的连接开销相当低)。话虽如此,重用现有连接通常是一种适当的方法,但它需要一些谨慎的考虑:如果数据库服务器暂时不可用,则代码必须重新连接;如果服务器被替换,则必须重新连接(mysql实现倾向于使用故障转移解决方案,而不是真正的高可用性);如果应用程序使用到mysql的多个连接,则必须确保不交叉用户或会话之间的连接(活动数据库、时区、字符集等是会话变量,本质上与连接相关联)。如果在这些和其他边缘情况下无法完成使可重用连接可靠的任务,那么每2秒创建一个新连接可能会免费提供这种持久性。
简而言之,短命的人际关系可以带来不那么明显的好处。除非你有理由相信它实际上会对你的情况产生有意义的影响(例如基准),否则我不会为保持持久的联系而增加智慧。
https://stackoverflow.com/questions/27748639
复制相似问题