улучшение производительности соединения узла postgres - PullRequest
0 голосов
/ 29 апреля 2019

Я пишу свой бэкэнд, используя nodejs (экспресс), и моя база данных - PostgreSQL.Я использую node-postres (pg) для подключения к базе данных postgres.

В настоящее время я использую концепцию pg.Pool, чтобы у меня были клиенты, подключенные для обработки запроса / ответа.Что я наблюдаю, так это то, что ноду-postgres требуется более 2 секунд для подключения к БД, и, следовательно, время отклика довольно велико.

В документе node-postgres они упоминают, что первоначальное соединение занимает всего 20-30 миллисекунд.Но я вижу более 2-3 секунд, чтобы установить соединение.Я выполнил нагрузочное тестирование моего приложения со скоростью около 1000 запросов в секунду, но среднее время ответа довольно велико из-за начального времени установления соединения.У меня есть только один запрос SELECT, где я получаю ответ.Время обработки ответа очень меньше, только подключение и получение данных из БД занимает больше времени.

Я перепробовал все способы освобождения клиента в пуле после получения ответа и т. Д. Теперь яиспользуя pool.query, который позаботится о подключении, а также о выпуске клиента в пул после выполнения задачи.

Есть ли альтернатива для узла-postgres, которая обеспечивает лучшую производительность для БДоперации.

...