Hola Oscar,

Hace tiempo que no participo en estas listas, asi que voy a escribir algo...
ya lo extraño :-)

Abrir y cerrar una conexion es costoso, por eso existen los Connection
Pools.... Un CP es basicamente una lista de conexiones abiertas a un server,
te doy un ejemplo:

-- cuando vos te conectas a un SQL Server por primera vez, se crean 10
conexiones (no una sola!). Asi, cuando se abren mas de una conexion
simultaneamente, se utilizan una de esas 10 conexiones para acceder al sql
server. A medida que haya mas y mas clientes simultaneos, y esas 10 no
alcancen, se van a abrir nuevas para que todos los clientes se puedan
conectar.

Los connection pools tienen en general 2 opciones: Min Connections y Max
Connections. El primero es la cantidad inicial de conexiones que se crean.
Deberias configurar el MIN al menos como la cantidad de conexiones que
seguro vas a tener simultaneas. El MAX es la cantidad obviamente la cantidad
maxima que se pueden abrir en el pool. Una vez que tenes 100 (por ejemplo)
conexiones abiertas en el mismo momento, si pedis otra vas a tener un error.

En ADO.NET existe un connection pool por cada connection string
*exactamente* igual. Es decir que si vos tenes:

"server=asd;user id=sa;pwd=123"
y tenes:
"user id=sa;pwd=123;server=asd" (los parametros son los mismos pero estan en
otro orden)

eso te va a crear 2 connection pools diferentes.



Saludos,
Diego


2010/10/2 Oscar Onorato <oscar.onor...@gmail.com>

> Holas c...@s,
>
> Les molesto para saber si me pueden recomendar algún sitio donde expliquen
> lo que es una "Connection Pool" en ADO.NET.
> No llego a comprender muy bien porqué debe existir algo así en una sola
> conexión. Aunque desearía saberlo.
>
> Muchas gracias
> --
> Oscar R. Onorato
>

Reply via email to