Тред пулы не подходят. Я объяснил почему, если даже выделить 3 потока, то каждый поток так или иначе будет ждать пока запрос выполнится к бд, независимо от пула соединений с бд
Я пытался реализовать другую фишку, сериализацию данных в один запрос и отправку, но я сколько сижу смотрю документацию в libpqxx, такой возможности там нету.
В общем, не знаю пока что с этим делать.
Мне нужно реализовать все это так чтоб Game сервера сериализовали несколько запросов по необходимости и слали их одним пакетом в DBSV, а тот в свою очередь отправлял бы их на postgresql, а затем вызвал 1 раз коммит. Другого решения не придумал
————
@Ioann_V дело не в том, что ты можешь делать другие вещи, а в том, что запросы к бд выполняются долго. Нужно хотя бы уменьшить кол-во запросов к бд, сериализовывать запросы в один запрос, сохранять часто только наиболее важные данные для клиентов и т.п.
P.S. libpqxx калл, не позволяет подобные вещи делать, как я понял, то есть, нельзя взять 2 вектора, один с prepared данными, а другой с pqxx::result и вызвать например exec_prepared...
А мне еще эти pqxx::result парсить нужно, в общем, нужно придумать тут что-то больше чем просто подай-принеси к бд, придется создавать еще какой нибудь класс, который бы имел каллбэки для парсинга