В .Net пул соединений обрабатывается автоматически, а не непосредственно вашим приложением.
Все, что вам нужно сделать, это открыть, использовать и закрывать ваши соединения в обычном режиме, и он позаботится обо всем остальном.
https://docs.microsoft.com/en-us/dotnet/framework/data/adonet/sql-server-connection-pooling
Если вы говорите о другой платформе, механика другая, хотя цель одна и та же.
Во всех случаях открытие и закрытие соединений с сервером БД занимает много времени, поэтому что-то между вашим приложением и сервером БД (обычно драйвером базы данных или каким-либо промежуточным программным обеспечением) будет поддерживать пулоткрывайте соединения и создавайте, уничтожайте и перерабатывайте их по мере необходимости.
Объединение в пул сохраняет соединения открытыми и сокращает накладные расходы на их открытие для каждого запроса.
Также не могли бы вы дать мнесценарий, в котором следует использовать пул баз данных, а когда нет?
Пул соединений полезен в любом приложении, которое использует одно и то же соединение с базой данных несколько раз в течение времени существования пула соединений.
Тамна самом деле будет очень незначительное снижение производительности , если у вас было приложение, которое использовало одно соединение один раз, а затем не использовало его снова, пока пул соединений не истек и не был перезагружен.Это крайне редко встречается в производственных приложениях.
Что я не понимаю, так это то, как это может помочь, если, скажем, у меня есть сервер, который подключается к базе данных и поддерживает соединение открытым.
Если у вас есть приложение, которое открывает соединение и оставляет его открытым, то теоретическое объединение не поможет.С практической точки зрения, полезно периодически уничтожать и воссоздавать различные ресурсы, такие как соединения, дескрипторы, сокеты и т. Д., Поскольку программное обеспечение не идеально, а некоторый код содержит утечки ресурсов.
Я просто догадываюсь, но подозреваю, что вас беспокоит преждевременная оптимизация .Если вы не выполнили реальное тестирование и не определили, что пул соединений является проблемой, я бы не слишком беспокоился об этом.Пулы соединений, как правило, поддерживают себя и почти всегда улучшают производительность.