在发送状态请求pg_connection_busy()时,请求是否区分“连接忙”和“服务器忙”?

换句话说,服务器具有100个允许的连接,其中一个应用于当前脚本。所有100个连接同时发送查询,其中99个需要2秒以上的处理时间(理论上将服务器置于最大状态,从而使其“忙”)。这100个请求中的一个是 pg_server_busy() 要求。回应是 True 或者 False?

有帮助吗?

解决方案

pg_connection_busy() 基本上调用libpq的 PQconsumeInput() 其次是 PQisBusy(), ,两者都记录在异步命令处理.

这与服务器与其他连接的总体忙碌无关。此外,它也不会向其发送任何内容,询问或其他任何内容,它纯粹是关于在异步检索结果时对传入数据缓冲的局部条件。

不幸的是,PHP文档给出的示例具有误导性。它打电话 pg_connection_busy() 在没有任何异步查询运行的新连接上,这没有任何意义。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top