Пул соединений в.NET/SQL Server?
Нужно или полезно писать собственный код пула соединений при разработке приложений в.NET с базой данных SQL Server? Я знаю, что ADO.NET дает вам возможность включить / отключить пул соединений - означает ли это, что он встроен в инфраструктуру, и мне не нужно об этом беспокоиться? Почему люди говорят о написании своего собственного программного обеспечения для создания пулов соединений и чем оно отличается от того, что встроено в ADO.NET?
5 ответов
Встроенный в ADO.Net пул соединений надежен и надежен. Я бы рекомендовал не пытаться написать свою версию.
Я не настоящий эксперт в этом вопросе, но я знаю, что ADO.NET имеет свою собственную систему пулов соединений, и, пока я ее использую, она безупречна.
Моя реакция заключается в том, что нет смысла заново изобретать колесо... Просто убедитесь, что вы закрыли свои соединения, когда закончите с ними, и все будет хорошо!
Я надеюсь, что кто-то еще может дать вам больше твердые ответы!
Насколько я понимаю, пул соединений автоматически обрабатывается для вас при использовании объекта SqlConnection. Это специально разработано для работы с MSSQL и обеспечит эффективное соединение соединений. Вы просто должны быть уверены, что закрыли их, когда закончили с ними (и убедитесь, что они утилизированы).
Я никогда не слышал о людях, которым нужно кататься самостоятельно. Но я признаю, что мой опыт там ограничен.
С появлением ADO.Net и более новой версии пула соединений SQL осуществляется на двух уровнях, во-первых, через сам ADO.Net, а затем непосредственно через SQL Server 2005/2008, что устраняет необходимость в настраиваемом пуле соединений.
Мне сообщили, что аналогичная поддержка планируется или была реализована в Oracle и MySQL из интереса.
Что ж, он уйдет, поскольку ответом на все эти вопросы будет LINQ. Между прочим, мы никогда не нуждались в настраиваемом пуле соединений ни для одного из наших приложений, поэтому я не уверен, в чем весь шум.