Dela via


Begrepp för COM+-objektpooler

Objektpooler är en automatisk tjänst som tillhandahålls av COM+ som gör att du kan konfigurera en komponent så att instanser av sig själv hålls aktiva i en pool, redo att användas av alla klienter som begär komponenten. Du kan konfigurera och övervaka poolen som underhålls för en viss komponent administrativt och ange egenskaper som poolstorlek och timeout-värden för skapandebegäran. När programmet körs hanterar COM+ poolen åt dig och hanterar information om objektaktivering och återanvändning enligt de kriterier som du har angett.

Du kan uppnå mycket betydande prestanda och skalningsfördelar genom att återanvända objekt på det här sättet, särskilt när de skrivs för att dra full nytta av återanvändning. Med objektpooler får du följande fördelar:

  • Du kan påskynda objektanvändningstiden för varje klient, vilket tar hänsyn till tidskrävande initiering och resursförvärv från det faktiska arbete som objektet utför för klienter.
  • Du kan dela kostnaden för att skaffa dyra resurser för alla klienter.
  • Du kan förallokera objekt när programmet startar innan några klientbegäranden kommer in.
  • Du kan styra resursanvändningen med hantering av administrativa pooler, till exempel genom att ange en lämplig högsta poolnivå, kan du endast hålla öppet så många databasanslutningar som du har en licens för.
  • Du kan konfigurera pooler administrativt för att dra nytta av tillgängliga maskinvaruresurser, så att du enkelt kan justera poolkonfigurationen när tillgängliga maskinvaruresurser ändras.
  • Du kan påskynda återaktiveringstiden för objekt som använder JIT-aktivering (just-in-time), samtidigt som du medvetet kontrollerar hur resurser tilldelas till klienter.

Hantera poolbara objekt

Poolbara objekt måste uppfylla vissa krav för att en enskild objektinstans ska kunna användas av flera klienter. De kan till exempel inte hålla klienttillstånd eller ha någon trådtillhörighet. Transaktionsobjekt har också särskilda krav, eftersom hanterade resurser som innehas av ett poolobjekt måste registreras manuellt i en transaktion.

Poolobjekt kan implementera IObjectControl- för att styra hur de återanvänds. På så sätt kan de utföra initiering när de aktiveras i en viss kontext, rensa alla klienttillstånd vid inaktivering och ange när de är i ett tillstånd som inte kan återanvändas.

Ofta är det användbart att skriva poolbara objekt på ett något allmänt sätt så att de kan anpassas administrativt med en konstruktorsträng. Ett objekt kan till exempel skrivas för att innehålla en allmän ODBC-anslutning, med en viss DSN administrativt angiven i en konstruktorsträng.

Avsnitten i det här avsnittet, som beskrivs i följande tabell, innehåller information om hur objektpooler fungerar i COM+, samt information om hur du skriver, konfigurerar och implementerar poolbara objekt.

Ämne Beskrivning
Hur objektpooler fungerar
Presenterar grundläggande begrepp.
Förbättring av prestanda med objektpooling
Innehåller specifik information om hur du kan använda objektpooler mest effektivt.
Krav för poolbara objekt
Innehåller information om hur du skriver ett objekt som ska poolas.
Poola transaktionella objekt
Innehåller information om de särskilda krav som gäller för poolbara transaktionsobjekt.
kontrollera objektets livslängd och tillstånd
Beskriver hur poolobjekt kan implementeras för att styra hur de återanvänds.

COM+-objektpoolaktiviteter