SqlConnection.PacketSize Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá velikost (v bajtech) síťových paketů používaných ke komunikaci s instancí SQL Server.
public:
property int PacketSize { int get(); };
public int PacketSize { get; }
[System.Data.DataSysDescription("SqlConnection_PacketSize")]
public int PacketSize { get; }
member this.PacketSize : int
[<System.Data.DataSysDescription("SqlConnection_PacketSize")>]
member this.PacketSize : int
Public ReadOnly Property PacketSize As Integer
Hodnota vlastnosti
Velikost síťových paketů (v bajtech). Výchozí hodnota je 8000.
- Atributy
Příklady
Následující příklad vytvoří SqlConnection, včetně nastavení Packet Size
na 512 v připojovací řetězec. Zobrazí PacketSize vlastnosti a ServerVersion v okně konzoly.
private static void OpenSqlConnection()
{
string connectionString = GetConnectionString();
using (SqlConnection connection = new SqlConnection(connectionString))
{
connection.Open();
Console.WriteLine("ServerVersion: {0}", connection.ServerVersion);
Console.WriteLine("PacketSize: {0}", connection.PacketSize);
}
}
static private string GetConnectionString()
{
// To avoid storing the connection string in your code,
// you can retrieve it from a configuration file, using the
// System.Configuration.ConfigurationSettings.AppSettings property
return "Data Source=(local);Initial Catalog=AdventureWorks;"
+ "Integrated Security=SSPI;Packet Size=512";
}
Private Sub OpenSqlConnection()
Dim connectionString As String = GetConnectionString()
Using connection As New SqlConnection(connectionString)
connection.Open()
Console.WriteLine("ServerVersion: {0}", connection.ServerVersion)
Console.WriteLine("PacketSize: {0}", connection.PacketSize)
End Using
End Sub
Private Function GetConnectionString() As String
' To avoid storing the connection string in your code,
' you can retrieve it from a configuration file, using the
' System.Configuration.ConfigurationSettings.AppSettings property
Return "Data Source=(local);Database=AdventureWorks;" _
& "Integrated Security=SSPI;Packet Size=512;"
End Function
Poznámky
Pokud aplikace provádí operace hromadného kopírování nebo odesílá nebo přijímá velké množství textových nebo obrazových dat, může velikost paketu větší než výchozí zvýšit efektivitu, protože způsobuje méně operací čtení a zápisu v síti. Pokud aplikace odesílá a přijímá malé množství informací, můžete nastavit velikost paketu na 512 bajtů (pomocí hodnoty Velikost paketu v ), ConnectionStringkterá je dostatečná pro většinu operací přenosu dat. Pro většinu aplikací je nejlepší výchozí velikost paketů.
PacketSize může být hodnota v rozsahu 512 a 32767 bajtů. Pokud je hodnota mimo tento rozsah, vygeneruje se výjimka.
Nastavení výchozí hodnoty na číslo větší než 8000 způsobí, že pakety budou používat multistránkový alokátor v instanci SQL Server místo mnohem efektivnějšího alokátoru SinglePage, což sníží celkovou škálovatelnost SQL Server. Další informace o tom, jak SQL Server používá paměť, najdete v tématu Průvodce architekturou správy paměti.