Контекстные подключения и обычные подключения
Область применения:SQL Server
Если вы подключаетесь к удаленному серверу, всегда используйте регулярные подключения, а не контекстные подключения. Если нужно подключиться к тому же серверу, на котором выполняется хранимая процедура или функция, в большинстве случаев используется контекстное соединение. Этот метод имеет такие преимущества, как выполнение в том же пространстве транзакций, а также необходимость повторной проверки подлинности.
Кроме того, использование контекстного соединения обычно приводит к повышению производительности при меньшем потреблении ресурсов. Подключение контекста — это подключение только для процесса, поэтому оно может связаться с сервером напрямую путем обхода сетевого протокола и транспортных слоев для отправки инструкций Transact-SQL и получения результатов. Также обходится процесс проверки подлинности. На следующем рисунке показаны основные компоненты управляемого поставщика SqlClient
и взаимодействие различных компонентов при использовании регулярного подключения и контекстного подключения.
Контекстное соединение требует более короткого кода и меньшего числа компонентов, поэтому запрос к серверу, как и получение результатов, происходит быстрее, чем при обычном соединении. Время выполнение запроса на сервере остается одинаковым для контекстных и обычных соединений.
В некоторых случаях может потребоваться открыть отдельное регулярное подключение к одному серверу. Например, существуют определенные ограничения на использование контекстного подключения, описанные в разделе Ограничения для контекстных подключений и регулярных подключений.
Связанное содержимое
- подключение контекста