Vad är anslutningssamling?
Connection pooling är termen för hantering av anslutningar för användare som gör frågor om databaser. Även om många användare kanske inte märker det, när det finns ett stort antal användare som söker åtkomst till en applikationsserver på vilken en databas ligger, kan den stora volymen av anslutningar bli nästan omöjlig för en server att upprätthålla god anslutning med alla anslutningar på dessa tider. Programvaruteknik som möjliggör koppling av anslutningar gör det möjligt för en server att hantera anslutningar väl oavsett den höga volymen anslutningar som gör frågor och möjliggör svar på dessa frågor med hastigheter under sekunden.
Anslutningar måste vara av identisk konfiguration för att kunna ingå i en anslutningspool, så de flesta serveranslutningspoolerprogram har olika anslutningspooler som körs samtidigt. När en användare försöker ansluta tilldelas han eller hon en pool med liknande konfigurationer, om utrymme är tillgängligt. Om det inte finns plats finns köet i kö för att tilldelas så snart en finns tillgänglig. En användare kanske inte är medveten om att han eller hon står i en kö, men kanske helt enkelt märker att databasen verkar långsam i frågesvaret; men i back office för databashanteringssystem finns det skanning av poolerna för att hitta utrymme för användaren att hitta en öppen anslutning. De flesta anslutningspoolerprogram har en uppsatt lista med maximala användare per pool och minsta tidsinställningar för vilka en anslutning kan förbli inaktiv innan anslutningen tappas och tillgängligheten återgår till poolen.
Vid skapandet av en anslutningspool skapas ett visst antal anslutningsobjekt och läggs till i poolen. För att en pool ska anses vara aktiv behöver den ett minimum av antal objekt. Dessa anslutningsobjekt är tillgängliga säten som kopplar en anslutning till poolen, och de kan skapas och läggas till poolen efter behov upp till det maximalt tillåtna i en pool. Eftersom användare är nöjda med sin fråga och släpper av sitt anslutningsobjekt, returneras objekten till poolen av anslutnings-poolningsprogrammen för användning av en annan användare eller samma användare när han eller hon återvänder.
En faktor som kan bromsa responstiderna vid poolning av anslutningar är vad som kallas poolfragmentering. Poolfragmentering uppstår vanligtvis på grund av integrerad säkerhet eller för många databaser som finns på en befintlig uppsättning servrar. Ett databashanteringssystem som autentiserar användare och sedan köar eller tilldelar dem till befintliga anslutningspoolobjekt dränerar minnet, och en stramare systemdesign för åtkomst rensar ofta upp problemet för för många databaser. Den integrerade säkerhetssystemdesignen för Windows-baserade program i många anslutningspoolerprogram kräver att endast en Windows-baserad användare bor i en pool åt gången. Detta kan rensas upp genom att skapa fler pooler för att tillgodose ytterligare förfrågningar som måste besvaras samtidigt.
Om anslutnings-poolningsprogrammet upptäcker att en användare har varit i viloläge utöver en viss tidsperiod eller om anslutningen har avbrutits, kommer det att ansluta anslutningsobjektet till poolen som ett ogiltigt objekt. Om en server avbryts medan en anslutning pågår kan anslutningen fortfarande dras tillbaka trots att anslutningspoolen inte är medveten om den avstängda anslutningen. ActiveX-anslutningspool-program fortsätter sedan vanligtvis att rensa poolen för dessa anslutningar när servern startas om.