Вопрос

При отправке запроса о состоянии 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