Моя головная боль - мое серверное приложение превышает максимальное количество открытых подключений к базе данных во время загрузки. Итак, я полагаю, мне нужна очередь задач (ака сервисная шина) для доступа к базе данных для записи. Очередь, что запросы на запись в db могут быть отправлены на нее, а посвященные потоки будут читать и выполнять.Реализация очереди многопоточных задач в .NET.
Мне было интересно, есть ли готовые компоненты, которые делают именно это. Мои требования:
- Несколько потоков могут записываться в очередь с минимальной блокировкой.
- Более одного потока можно прочитать из очереди для выполнения отправленных запросов на запись. В наиболее ограниченном случае это число равно 1, но может быть больше, например, 10% от предела связи открытого db.
Любые идеи?
Спасибо.
P.S.
Я заметил this и this, но ни один из них не имеет отношения к мне.
Только для ссылки на сайт Albahari вы заслуживаете +1. – mark