Пул соединений следует использовать всякий раз, когда время для установления соединения больше нуля (почти всегда), а также при достаточном среднем использовании, так что соединение может быть снова использовано до истечения времени ожидания.
Преимущества заключаются в том, что гораздо быстрее открывать / закрывать новые соединения, поскольку они на самом деле не открываются и не закрываются, а просто извлекаются из пула.
Недостатком может быть то, что в некоторых пулах подключений вы получите ошибку, если все пул подключений используются. Обычно это хорошо, так как указывает на проблему с тем, что вызывающий код не закрывает соединения, но если вам законно нужно больше соединений, чем в пуле, и вы не настроили его должным образом, вы можете получить ошибки там, где иначе не будет.
И, конечно, будут другие плюсы и минусы в зависимости от конкретной среды, в которой вы работаете, и базы данных.