Groepsgewijze verbindingen
Het maken van verbinding met een gegevensbron kan tijdrovend zijn. Om de kosten van het openen van verbindingen te minimaliseren, gebruikt ADO.NET een optimalisatietechniek genaamd verbindingspooling, waardoor de kosten voor het herhaaldelijk openen en sluiten van verbindingen worden geminimaliseerd. Groepsgewijze verbindingen worden anders verwerkt voor de .NET Framework-gegevensproviders. Hoewel verbindingspooling de prestaties en het resourcegebruik verbetert, kunnen verschillende factoren de efficiëntie ervan beïnvloeden, afhankelijk van de databaseomgeving en configuratie:
verbindingslimieten en resourcebeperkingen: In databaseomgevingen zijn verbindingslimieten vaak gekoppeld aan servicelagen of resourceconfiguraties. Azure SQL Database definieert bijvoorbeeld verbindingslimieten op basis van de geselecteerde servicelaag, terwijl azure SQL Managed Instance limieten afdwingt op basis van toegewezen resources, zoals CPU, geheugen of vCores. Wanneer de configuraties van verbindingsgroepen deze limieten overschrijden, kunnen toepassingen geweigerde verbindingen, beperking of verminderde prestaties ervaren.
verificatiemethoden: verificatiemechanismen op basis van tokens, zoals Microsoft Entra ID-verificatie, kunnen invloed hebben op verbindingspooling vanwege verloop van token. Verlopen tokens kunnen verbindingen in de pool ongeldig maken, waardoor hergebruik wordt onderbroken. Dit gedrag doet zich voor in zowel cloud- als on-premises databasesystemen die gebruikmaken van moderne verificatieprotocollen.
netwerklatentie en eindpunten: netwerklatentie en eindpuntconfiguraties kunnen van invloed zijn op de efficiëntie van groepsgewijze verbindingen. Openbare eindpunten, die vaak worden gebruikt in in de cloud gehoste databases, introduceren doorgaans een hogere latentie in vergelijking met privé- of directe verbindingen. In cloudeigen toepassingen met dynamische IP-adressering kan het hergebruik van verbindingen worden onderbroken als firewallregels niet worden bijgewerkt voor het wijzigen van IP-adressen.
Versleutelingsvereisten: Databases die TLS/SSL-versleuteling afdwingen, moeten worden uitgelijnd tussen configuraties voor verbindingsgroepen en versleutelingsinstellingen. Als u bijvoorbeeld vereiste versleutelingsparameters weglaat in verbindingsreeksen, zoals
Encrypt=True
, kan dit leiden tot verbindingsfouten, waardoor de poolefficiëntie wordt verminderd.DNS-omzetting: privé-eindpunten en op maat gemaakte DNS-configuraties kunnen uitdagingen opleveren voor verbindingenpooling. Onjuist geconfigureerde of inconsistente DNS-instellingen kunnen de instelling van de verbinding vertragen of blokkeren, waardoor de prestaties en betrouwbaarheid van het hergebruik van verbindingen worden beïnvloed. Dit is met name relevant in omgevingen met hybride of privécloud-instellingen.
In deze sectie
SQL Server Verbindingspooling (ADO.NET)
Biedt een overzicht van groepsgewijze verbindingen en beschrijft hoe groepsgewijze verbindingen in SQL Server werken.
OLE DB-, ODBC- en Oracle-verbindingspooling
Beschrijft groepsgewijze verbindingen voor de .NET Framework-gegevensprovider voor OLE DB, de .NET Framework-gegevensprovider voor ODBC en de .NET Framework-gegevensprovider voor Oracle.