hydra_13
@hydra_13
Пограммист - любитель)

Оптимизация высоконагруженных приложений. С++. Какую литературу посоветуете для прочтения?

Собственно имеется следующая ситуация
5c3893e4b2610723584122.png
Из различных этапов обработки поступают данные на менеджер потоков - в нем есть глобальная куча входных данных.
Во время начала обработки создаются N потоков парсинга данных и формирования пачек запросов. Каждый поток, если он обработал имевшиеся у него данные, запрашивает новую пачку у менеджера потоков. Тот в свою очередь скидывает запросившему потоку всю имеющуюся кучу входных данных. При накоплении определенного количества данных, либо по времени простоя без входных данных - поток начинает процедуру отправки подготовленных пачек запросов в БД.
Сейчас это работает, делалось путем проб и ошибок. Охота узнать как это можно оптимизировать и где можно об этом почитать.
Заранее благодарю!
З.Ы.: если кто-нибудь поделится своим опытом создания подобных систем, буду примного благодарен! ;)
  • Вопрос задан
  • 199 просмотров
Пригласить эксперта
Ответы на вопрос 1
IGHOR
@IGHOR
Qt/C++ DEV/CTO
Если запросы однотипные то лучше сделать буфер накопления запросов и объединить их в один запрос. А по результату уже распределять кто что просил.
Меньше запросов - всегда лучше.
Да и надо уточнить, как вы подключаетесь к самой БД? И поддерживает ли библиотека подключения одновременные запросы в пределах инстанса, поддерживает ли параллельную одновременную обработку запросов с разных тредов или же все запросы идут по одному подключению или блокируются мьютексами.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы