Есть многопоточный сервер на с++, который работает с mysql базами. Проблема в том, что открытие одного соединения на одного клиента не подходит из-за большой нагрузки на сервер, а использование одного соединения с базой на все приложение чревато большими проблемами. Подскажите как решить эту проблему.
Обычно в таких случаях используют пул соединений (connection pool). Суть его в том, что к базе открывается ограниченное число соединений (например, 10). Каждый раз, когда клиент пытается подключиться к базе, мы выдаём ему соединение из пула. После оекончания работы с базой (отсоединения клиента) соединение возвращается в пул, но не закрывается, а по приходу нового запроса отдаётся следующему клиенту. Плюсы такого подхода - не нужно тратить время на переоткрытие соединений с базой. Минусы - ограниченное число одновременных подключений к базе, сложности реализации. На вашем месте я бы не стал писать пул самостоятельно, а поискал бы готовые реализации в Интернете (сам я, к сожалению, не пользовался подобным в C++, поэтому ничего конкретного посоветовать не могу).
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
В таком случае код работаетЕсли создать новый объект (new PDO)
У меня есть база на хостингеЕсть на сервере апи, которое взаимодействует с базой и с приложением
Можно ли проверить значения, которые передает запрос INSERT в YII? Дело в том, что при добавлении записи вылетает следошибка:
Доброго времени сутокПочему не получается сделать соответствие поля регулярному выражению- ни одна документация не запрещает это (вроде...