如何在PHP5中使用PDO处理多个用户的并发数据库连接

如何在PHP5中使用PDO处理多个用户的并发数据库连接,php,mysql,pdo,Php,Mysql,Pdo,我想在我的应用程序中使用PDO。然而,我对这里使用PDO感到困惑。因为我的应用程序访问目标将是多个用户。假设同时有100个用户。所以,当我读到关于PDO的内容时,它将创建100 db的访问连接。这会造成问题,因为它会限制服务器允许的并发连接。新用户将出现连接错误 如何使用PDO来处理并发连接而不增加开销?您可以使用持久连接。PDO将返回未使用的连接,而不是关闭和重新打开。这将减少开销和打开的连接数量 100个并发用户并不是那么令人印象深刻的数字。一般用户每分钟点击一次,我们有100次连接,持续6

我想在我的应用程序中使用PDO。然而,我对这里使用PDO感到困惑。因为我的应用程序访问目标将是多个用户。假设同时有100个用户。所以,当我读到关于PDO的内容时,它将创建100 db的访问连接。这会造成问题,因为它会限制服务器允许的并发连接。新用户将出现连接错误


如何使用PDO来处理并发连接而不增加开销?

您可以使用持久连接。PDO将返回未使用的连接,而不是关闭和重新打开。这将减少开销和打开的连接数量


100个并发用户并不是那么令人印象深刻的数字。一般用户每分钟点击一次,我们有100次连接,持续60秒,每秒连接1.5次。
正常编写的应用程序应不再执行0.1秒。意味着一秒钟内可以安装10个连接。我们有1.5


是的,它有时会达到峰值,但无论如何,允许的连接数将是我最不愿意考虑的事情。最有可能的是,由于不正确的索引和体系结构,您的数据库将在达到限制之前被终止。

我认为您不了解它的工作原理-使用谷歌搜索一下,但请相信我,PDO即使是在一个普通的服务器上也能处理500个并发用户,而不费吹灰之力。这是否主要取决于数据库本身,而不是数据库本身应用程序?PDO可以处理许多连接。。然而,MySQL服务器在共享主机上的openn连接有限。正如在PDO中一样,我们不确定连接何时关闭……因此它会增加活动连接的开销……如果您预期有100个并发用户,那么您可能超出了共享主机的范围。如果您的共享主机不提供此功能,您自己的专用服务器可以:根据您的数据库,使用任意数量的不同策略进行连接池(例如,我是Postgres pgbouncer的粉丝)。“以及打开的连接数量”纯属幻想,与前面的陈述完全不同。然而,我们可以从中看出,存在“未使用的”(即占用的)连接。不幸的是,在这个幸运的网站上,我们不能在稍微超出基本语法的问题上信任投票机制issues@YourCommonSense请纠正我,我想学习一些新的东西,100个用户只是一个假设。我的观点是,当我阅读BaoutPDO时,如果没有发现任何空闲连接,它只会打开新的连接。。通过这种方式,我们将活动连接增加到MYSQL支持的最大连接级别。那么,我们有没有办法利用PDO克服这些可能性呢。此外,我无法看到有关PDO连接生命周期的信息。很可能您将PDO与持久连接混淆了。好的。。所以你的意思是说,如果我使用PDO的非持久性,我不会想出上述情况。。如果我错了,请纠正我。PDO非持久性生命周期:1)脚本启动-获取连接2)连接活动3)脚本结束-连接关闭。现在,对于新脚本,将建立新的连接。是。虽然PDO可以设置为持久模式,正如它在另一个答案中所说的,但默认情况下,它的行为与您所说的完全相同。