В многопоточном приложении все потоки получают соединение с базой данных. Это ожидаемая или какая-то проблема? - PullRequest
0 голосов
/ 08 сентября 2010

Я использую NService и NHibernate для своего приложения.Что касается NServicebus, мы определяем количество потоков в файле конфигурации.По количеству потоков работника он работает в многопоточной среде.Иногда, когда все потоки используются и потоки получают соединение с базой данных, это не позволяет приложению создавать соединение с базой данных.Исключение составляет рабочий журнал при достижении максимального размера пула.И все потоки освобождают соединение в соответствии с тайм-аутом соединения.

Мой вопрос заключается в том, должен ли весь поток освобождать соединение после использования вместо того, чтобы переводить их в неактивное состояние или он работает нормально.Если он работает нормально, как я могу увеличить свой рабочий.Потому что при увеличении выдает ошибку максимального размера пула

1 Ответ

0 голосов
/ 08 сентября 2010

Я думаю, вы должны установить количество потоков, которое вы разрешаете, не превышать максимального размера пула для соединений с базой данных.

...