Pqconnectdb очень медленный по сравнению с psql.exeC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Pqconnectdb очень медленный по сравнению с psql.exe

Сообщение Anonymous »

Я пытаюсь добавить поддержку для «Postgresql» в мой обработчик сети. Все в порядке, и хорошо, у меня было очень мало проблем до сих пор, но когда я профилировал свою первоначальную связь, я понял, что это занимает очень много времени. Я думал, что это была причуда использования Windows для моего хоста, но при профилировании точно такую ​​же информацию об соединении и запрос «psql.exe», это было около 15 мс по сравнению с моими ручьтелями 100-150 мс. < /P>
Важные ноты < /strong> < /p>

Я использую. Проблема с большим количеством AV CREARINGE или RESIRCTED CPU Ресурсы процессора, поэтому я сделал пример приложения, в котором также используется Libpq.dll; Та же проблема. Нет проблем. существует. Видел очень незначительное улучшение, все еще с огромным разрывом. Без изменений. < /P>
< /li>
Я попытался профилировать и контролировать выполнение приложений, я не самый лучший в понимании этих обширных журналов мониторинга, поэтому я помещаю его в ИИ, эта информация может быть не полезна вообще, но я утверждает, что клиент застрял, что некоторые из них очень примечают, и я тоже заметил, что я очень замечает, что я очень заметил, что я очень заметил, и я тоже познакомился, и я очень заметил, что это очень быстро, и я очень заметил, что я очень заметил, и я очень замечает, что в этом случае, и я очень замечает, что в этом случае, и я очень замечает, что в этом случае. Разрыв времени между следующим пакетом отправляется от нашего клиента. С точки зрения полезной информации, которая связана с всем, что я получил.auto Start = std::chrono::high_resolution_clock::now();

PGconn* PGConnection = PQconnectdb("host=127.0.0.1 hostaddr=127.0.0.1 port=6432 dbname=... user=... password=... sslmode=disable gssencmode=disable");
if (!PGConnection)
{
return false;
}

if (PQstatus(PGConnection) == CONNECTION_BAD)
{
PQfinish(PGConnection);
return false;
}

auto End = std::chrono::high_resolution_clock::now();

std::cout $null }).TotalMilliseconds
< /code>
Записывает выполнение, принимая 14-15 мс < /p>
конечная цель < /strong>
Я в первую очередь ищу ответ, возможно, мне не хватает чего-то важного, что вызывает эту зацепку, что я очень легко могу решить. Однако, если бы это каким -то образом каким -то образом использует трюк psql.exe, чтобы более эффективно подключиться, я бы тоже был в порядке, этот разрыв не так беспокоит меня, если бы он был не таким большим, я бы просто хотел понять, почему, по крайней мере.

Подробнее здесь: https://stackoverflow.com/questions/797 ... o-psql-exe
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»