【发布时间】:2011-11-30 11:59:42
【问题描述】:
在过去的几周里,我们已经多次达到 1500 的 mysql 连接限制。突然之间 Threads_connected 爆炸了(300 -> 1500 在短短几分钟内)。
我们的前端服务器 (3x) 使用持久连接来连接到数据库服务器 (1x)。即使线程耗尽,我们的数据库服务器在资源方面(CPU、内存、IO)似乎也做得很好。
我正在考虑在我们的应用程序 (cakePHP) 中从持久连接切换到非持久连接。我能期待什么?
- 更高的 MySQL 负载?
- 前端服务器负载更高?
- 增加前端服务器的响应时间?
这样做是个好主意,还是我应该进一步增加连接限制?
【问题讨论】:
-
我会调查为什么您使用的连接数激增并解决它。如果您增加连接数,您只是通过声音来推迟问题。数据库服务器没问题,因为我认为它分配的数量不超过限制。对您的申请有何影响?
-
@mikey 对于某些人来说,该应用程序将无法工作,因为它需要一个数据库连接,但在达到限制时却无法获得...
-
在这种情况下,增加连接限制只会推迟问题。切换到非持久连接也可能只是推迟问题。我会调查为什么连接会以这种方式激增,并解决它。
-
@mikey 有什么建议吗?
-
请参阅此处以快速比较持久/非持久连接。 daniweb.com/web-development/databases/mysql/threads/44514
标签: php mysql apache database-connection