@h4cktill не подходит решение с тред пулом в libpqxx, там есть возможность сериализовать запросы, а потом разом отправить commit? И еще, должен ли я всегда вызывать commit если я например хочу просто прочесть базу, а не внести изменения? И как в случае если сериализация данных и отправка в бд возможна одним разом, то как получить pqxx::result для всех запросов что я сериализовал?
По сути, тред пулы не решают мою проблему, не буду же я создавать 100 потоков для 100 запросов, а 3 потока не решают мою проблему, один поток обрабатывает 1000 запросов с задержкой в 1.8 секунд, так что этот вариант с потоками не катит
———-
@zamazan4ik в смысле увидеть изменения? Не понял, что значит увидеть? Выполнить эти изменения или что?
——
@zamazan4ik тогда получается нет смысла делать .commit если я хочу просто прочитать данные с бд, но в таком случае, должен ли я вызывать .abort ? или можно просто получить pqxx::result не делая коммит и вызвать return result;
Что касается пулов, у меня есть уже пул соединений, но я не пойму, а что мне это дает? Я вот сделал щас пул соединений, не получил никакого прироста вообще, потому что по сути поток ждет ответа от postgresql. Теста ради создал 3 соединения, запросы шлются через queue, вытаскивается соединение, вызывается commit и пихается соединение вновь и так по кругу эти 3 соединения гоняет, но разницы в скорости никакой, что 1 соединение выдает 1.8 сек на 1к запросов, что 3 соединения
Вот Exec метод для коммитов
https://prnt.sc/s3a9c3