我想使用 mod_dbd 为我的 php 应用程序实现连接池。我能够为 apache 定义 mod_dbd 模块,并且可以看到它正在打开的连接,但我无法用我的 php 代码“连接”这些连接。我正在尝试带参数的 mysql_connect 和不带参数的 mysql_pconnect。
欢迎任何建议,
爱丽儿
为了从 mod_dbd 的连接池功能中受益,您需要运行线程 MPM,以便多个线程可以共享池中的连接。不幸的是,我确实相信 PHP 不是线程安全的,并且不支持线程 MPM。
如果你将 mod_dbd 与 pre-fork MPM 一起使用(它不是线程化的,建议用于 PHP),mod_dbd 将创建一个单一的持久数据库连接,与 PHP 中不使用 mod_dbd 的数据库连接相比,它不会给你带来任何巨大的优势。
http://bugs.php.net/bug.php?id=51865&edit=1
应该将其实现为 mysqlnd 之类的扩展,允许其他人从抽象代码继承。PECL 中很可能会出现这样的事情,但对于核心 PHP,我们中的任何人都不太可能会致力于它。
此外,您必须记住,它需要进行大量更改才能在 Apache 下允许连接池,同时允许扩展使用另一个非 Apache 的网络服务器,如 IIS 来使用。否则扩展会变得太有限。
只是引用我在谷歌上搜索的内容