繁体   English   中英

CakePHP和连接池

[英]CakePHP and connection pooling

我正在一个网站上工作,该网站需要同时处理来自同一表的多个请求。 我们在CakePHP中创建了一个简单的索引页,该索引页从数据库中绘制了一些数据(准确地说是10行),并且一位同事执行了一个测试,该仿真模拟了1000个用户同时查看同一页面,这意味着将发出1000个相同的请求到数据库。 问题是,在大约500个请求时,数据库停止响应,所有内容都冻结了,我们不得不终止进程。

我想到的是每个请求都是在自己的连接上执行的,这可以解释为什么MySQL服务器不堪重负。 通过一些在线搜索以及在SO上的搜索,我可以看到PHP不支持本机连接池,例如,在Java应用程序中就可以做到。 但是,在将我们的应用程序基于CakePHP 2.5.3的基础上,我想认为存在一些克服这些限制的潜在机制。 也许我做错了什么?

任何建议都值得欢迎,我只想确保穷尽所有可能的解决方案。

如果每个查询的结果都相同,则可以缓存查询结果,这样就不会向数据库发送多个请求,请尝试以下插件:-https: //github.com/ndejong/CakephpAutocachePlugin

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM