Connection pool – vývoj mobilních aplikací, webové služby, architektura SOA - Technologie
Přejít na obsah

Connection pooling - vývoj mobilních aplikací, webové služby, architektura SOA

Reklamy

Co je sdružování připojení?

Sdružování připojení vám umožňuje znovu použít existující připojení ke snížení režie neustálého vytváření a rušení připojení se stejnou konfigurací. Jinými slovy, otevírání a zavírání připojení, která používají stejný připojovací řetězec a pověření, mohou znovu použít dostupné připojení ve fondu. Typické aplikace používají stejné objekty připojení k neustálému načítání a aktualizaci dat z databáze. Sdružování připojení poskytuje mnohem vyšší úroveň výkonu tím, že eliminuje potřebu databáze neustále vytvářet a rušit připojení. Fondy připojení jsou odděleny procesem, doménou aplikace a připojovacím řetězcem. Pro připojovací řetězce, které používají integrované zabezpečení, je pro každou jedinečnou identitu vytvořen samostatný fond.

Řízení možností sdružování připojení

Sdružování připojení je standardně povoleno při vytváření objektů připojení ADO.NET. Chování sdružování připojení můžete řídit (nebo sdružování připojení úplně zakázat) nastavením konkrétních klíčových slov řetězce připojení pro sdružování připojení. Chcete-li například konkrétně zakázat sdružování připojení, nastavte v řetězci připojení hodnotu Pooling=False. Tabulka 5-7 uvádí seznam klíčových slov připojovacího řetězce, která lze použít k řízení toho, jak konkrétní připojení interaguje s fondem připojení. Ne všechna klíčová slova jsou dostupná všem poskytovatelům. Poskytovatel OLE DB například řídí fond připojení (známý také jako fond prostředků nebo relací) na základě hodnoty nastavené pro klíčové slovo Služby OLE DB v připojovacím řetězci.

Řetězec připojení fondu připojení tabulkyKromě vlastností připojovacího řetězce, které řídí chování sdružování připojení, jsou na objektech připojení k dispozici také metody, které mohou také sdružování připojení ovlivnit. Dostupné metody se obvykle používají, když ukončujete připojení ve vaší aplikaci a víte, že již nebudou použity. Tím se vyčistí fond připojení tím, že se připojení zahodí, nikoli se vrátí do fondu, když jsou zavřená. Všechna připojení, která jsou již ve fondu a otevřena, budou při příštím uzavření zrušena. Tabulka 5-8 uvádí dostupné metody pro interakci s fondy připojení.

Konfigurace připojení pro použití sdružování připojení

Ve výchozím nastavení mají všichni poskytovatelé dat .NET Framework, kteří jsou k dispozici v ADO.NET, povoleno sdružování připojení, ale úroveň řízení dostupné pro práci se sdružováním připojení se liší v závislosti na používaném poskytovateli.

Konfigurace sdružování připojení pomocí připojení SQL Server

Ve výchozím nastavení objekt SqlConnection automaticky používá sdružování připojení. Pokaždé, když zavoláte Sqlconnection.Open s jedinečným připojovacím řetězcem, vytvoří se nový fond. Ovládejte chování fondu připojení nastavením klíčových slov fondu připojení v řetězci připojení, jak je popsáno dříve v tabulce 5-7. Zvažte například připojení, kde chcete nastavit minimální velikost fondu. Přiřazením hodnoty větší než nula klíčovému slovu Mîn Pool Size zajistíte, že fond nebude zničen, dokud nebude aplikace ukončena. Chcete-li nastavit minimální velikost fondu na 5, použijte připojovací řetězec podobný následujícímu:

Zdroj dat=SqlServerName;Počáteční katalog=Název databáze; Integrované zabezpečení = Pravda; Minimální velikost fondu = 5

Minimální velikost fondu je ve výchozím nastavení 0, což znamená, že každé připojení musí být vytvořeno a inicializováno podle požadavků, zvýšením minimální velikosti fondu v připojovacím řetězci je vytvořen a připraven k použití uvedený počet připojení, což může snížit čas potřebný k vytvoření připojení na těchto počátečních připojeních.

Konfigurace sdružování připojení pomocí Oracle Connections

Připojení, která používají poskytovatele dat .NET Framework pro Oracle, automaticky používají sdružování připojení ve výchozím nastavení. Nastavením klíčových slov připojovacího řetězce můžete řídit, jak připojení využívá fond. Tabulka 5-10 uvádí klíčová slova připojovacího řetězce, která jsou k dispozici pro změnu aktivit fondu připojení.

Zpracování chyb připojení

Když SQL Server vrátí varování nebo chybu, .NET Framework Data Provider pro SQL Server vytvoří a vyvolá výjimku SqlException, kterou můžete zachytit ve své aplikaci a problém vyřešit. Když je vyvolána SqlException, zkontrolujte vlastnost SqlException.Errors, abyste získali přístup ke kolekci chyb, které jsou vráceny ze serveru SQL. Vlastnost SqlException.Errors je třída SqlErrorCollection (kolekce tříd SqlError), která vždy obsahuje alespoň jeden objekt SqlError.

Další informace Chyby serveru SQL

SqlConnection zůstane otevřený pro zprávy s úrovní závažnosti 19 nebo nižší, ale obvykle se automaticky zavře, když je závažnost 20 nebo vyšší.

souhrn

  • Sdružování připojení je ve výchozím nastavení povoleno.
  • Možnosti sdružování připojení jsou definovány v řetězci připojení, s výjimkou poskytovatele ODBC, který používá dialogové okno Správce zdroje dat ODBC v systému Windows.
  • Objekt SqlException se vytvoří, když je na serveru SQL zjištěna chyba.
  • Každá instance výjimky SqlException obsahuje alespoň jedno varování SqlError, které obsahuje informace o skutečné chybě serveru.
  • Ověřování systému Windows (také nazývané integrované zabezpečení) je navrhovaná metoda pro bezpečné připojení k datům.
  • Uložte připojovací řetězce obsahující citlivé informace do konfiguračního souboru aplikace a zašifrujte všechny konfigurace obsahující citlivé informace.