Пул за връзки – разработка на мобилни приложения, уеб услуги, SOA архитектура - Технология
Преминете към съдържанието

Пулиране на връзки - разработка на мобилни приложения, уеб услуги, SOA архитектура

Реклами

Какво е групиране на връзки?

Обединяването на връзки ви позволява да използвате повторно съществуващи връзки, за да намалите натоварването от непрекъснато създаване и премахване на връзки, които имат същата конфигурация. С други думи, отварянето и затварянето на връзки, които използват един и същ низ за връзка и идентификационни данни, могат да използват повторно налична връзка в пула. Типичните приложения използват едни и същи обекти за свързване, за да извличат непрекъснато и актуализират данни от база данни. Обединяването на връзки осигурява много по-високо ниво на производителност, като елиминира необходимостта базата данни постоянно да създава и прекъсва връзки. Пуловете за свързване са разделени от процес, домейн на приложение и низ за свързване. За низове за връзка, които използват интегрирана защита, се създава отделен пул за всяка уникална самоличност.

Контролиране на опциите за групиране на връзки

Пулирането на връзки е разрешено по подразбиране при създаване на обекти за свързване на ADO.NET. Можете да контролирате поведението на групирането на връзки (или да деактивирате напълно групирането на връзки), като зададете конкретни ключови думи за низ за свързване за групиране на връзки. Например, за да деактивирате конкретно групирането на връзки, задайте Pooling=False във вашия низ за връзка. Таблица 5-7 предоставя списък с ключови думи на низ за връзка, които могат да се използват за контролиране на това как конкретна връзка взаимодейства с пула за връзки. Не всички ключови думи са достъпни за всички доставчици. Например доставчикът на OLE DB контролира пула за свързване (известен също като пул за ресурси или сесии) въз основа на зададената стойност за ключовата дума OLE DB Services в низа за свързване.

Низ за свързване на пула за свързване на таблицаВ допълнение към свойствата на низа за свързване, които контролират поведението на пула на връзката, има и методи, налични за обекти на връзка, които също могат да повлияят на пула на връзката. Наличните методи обикновено се използват, когато затваряте връзки в приложението си и знаете, че няма да бъдат използвани отново. Това почиства пула за връзки, като отхвърля връзките, вместо да ги връща в пула, когато са затворени. Всички връзки, които вече са в пула и са отворени, ще бъдат отхвърлени следващия път, когато бъдат затворени. Таблица 5-8 изброява наличните методи за взаимодействие с пулове за свързване.

Конфигуриране на връзки за използване на групиране на връзки

По подразбиране всички доставчици на данни на .NET Framework, налични в ADO.NET, имат активирано групиране на връзки, но нивото на наличен контрол за работа с групиране на връзки варира в зависимост от използвания доставчик.

Конфигуриране на групиране на връзки с връзки на SQL Server

По подразбиране обектът SqlConnection автоматично използва групиране на връзки. Всеки път, когато извикате Sqlconnection.Open с уникален низ за връзка, се създава нов пул. Контролирайте поведението на пула за свързване чрез задаване на ключови думи за пул за свързване в низа за свързване, както е описано по-рано в Таблица 5-7. Например, помислете за връзка, при която искате да зададете минималния размер на пула. Като присвоите стойност, по-голяма от нула на ключовата дума Mîn Pool Size, вие гарантирате, че пулът няма да бъде унищожен, докато приложението не приключи. За да зададете минималния размер на пула на 5, използвайте низ за връзка, подобен на следния:

Източник на данни=SqlServerName;Начален каталог=Име на база данни; Интегрирана защита=Истина; Минимален размер на пула=5

Минималният размер на пула е 0 по подразбиране, което означава, че всяка връзка трябва да бъде създадена и инициализирана според заявката, чрез увеличаване на минималния размер на пула в низа за свързване, посоченият брой връзки се създават и са готови за използване, което може да намали време, необходимо за установяване на връзка на тези първоначални връзки.

Конфигуриране на групиране на връзки с Oracle Connections

Връзките, които използват .NET Framework Data Provider за Oracle, автоматично използват групиране на връзки по подразбиране. Можете да контролирате как връзката използва пула, като зададете ключови думи в низа за връзка. Таблица 5-10 описва ключовите думи на низа за свързване, налични за промяна на дейностите на пула за свързване.

Обработка на грешки при свързване

Когато SQL Server върне предупреждение или грешка, .NET Framework Data Provider за SQL Server създава и хвърля SqlException, който можете да уловите във вашето приложение, за да се справите с проблема. Когато SqlException бъде хвърлен, проверете свойството SqlException.Errors за достъп до колекцията от грешки, които се връщат от SQL сървъра. Свойството SqlException.Errors е клас SqlErrorCollection (колекция от класове SqlError), който винаги съдържа поне един обект SqlError.

ПОВЕЧЕ ИНФОРМАЦИЯ Грешки на SQL Server

SqlConnection ще остане отворен за съобщения с ниво на сериозност 19 или по-малко, но обикновено ще се затвори автоматично, когато тежестта е 20 или по-висока.

Резюме

  • Пулирането на връзки е активирано по подразбиране.
  • Опциите за групиране на връзки са дефинирани в низа за връзка, с изключение на доставчика на ODBC, който използва диалоговия прозорец на администратора на източник на ODBC данни в Windows.
  • Обект SqlException се създава, когато се открие грешка в SQL сървъра.
  • Всеки екземпляр на изключение SqlException съдържа поне едно предупреждение SqlError, което съдържа действителната информация за грешка на сървъра.
  • Удостоверяването на Windows (наричано още интегрирана защита) е предложеният метод за сигурно свързване с данни.
  • Съхранявайте низовете за връзка, които съдържат поверителна информация, в конфигурационния файл на приложението и шифровайте всички конфигурации, които съдържат поверителна информация.