Compartir vía


Conexiones de contexto frente a conexiones normales

Se aplica a:SQL Server

Si se conecta a un servidor remoto, use siempre conexiones normales en lugar de conexiones de contexto. Si se debe conectar al mismo servidor donde se está ejecutando el procedimiento almacenado o la función, utilice la conexión de contexto en la mayoría de los casos. Este método tiene ventajas como ejecutar en el mismo espacio de transacciones y no tener que volver a autenticarse.

Además, la utilización de la conexión de contexto suele proporciona un mejor rendimiento y menos uso de recursos. La conexión de contexto es una conexión solo en proceso, por lo que puede ponerse en contacto con el servidor directamente pasando el protocolo de red y las capas de transporte para enviar instrucciones Transact-SQL y recibir resultados. También se omite el proceso de autenticación. En la ilustración siguiente se muestran los componentes principales del proveedor administrado de SqlClient y cómo interactúan los distintos componentes entre sí al usar una conexión normal frente a la conexión de contexto.

Diagrama de rutas de acceso de código de un contexto y una conexión normal.

La conexión de contexto sigue una ruta de acceso al código más corta e implica menos componentes, de modo que puede esperar que las solicitudes y los resultados se envíen al servidor y de éste más rápido que en una conexión normal. El tiempo de ejecución de consultas en el servidor es el mismo en las conexiones de contexto y normales.

Hay algunos casos en los que es posible que tenga que abrir una conexión regular independiente con el mismo servidor. Por ejemplo, hay ciertas restricciones sobre el uso de la conexión de contexto, que se describe en restricciones de en conexiones de contexto y conexiones normales.

  • de conexión de contexto