SqlConnection.PacketSize Tulajdonság
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Lekéri a SQL Server egy példányával való kommunikációhoz használt hálózati csomagok méretét (bájtban).
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
Tulajdonság értéke
A hálózati csomagok mérete (bájtban kifejezve). Az alapértelmezett érték 8000.
- Attribútumok
Példák
Az alábbi példa létrehoz egy SqlConnection, beleértve a Packet Size 512 értékre állítását a kapcsolati karakterlánc. Megjeleníti a PacketSize konzolablakban lévő tulajdonságokat és ServerVersion tulajdonságokat.
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
Megjegyzések
Ha egy alkalmazás tömeges másolási műveleteket végez, vagy sok szöveges vagy képadatot küld vagy fogad, az alapértelmezettnél nagyobb csomagméret javíthatja a hatékonyságot, mivel kevesebb hálózati olvasási és írási műveletet okoz. Ha egy alkalmazás kis mennyiségű információt küld és fogad, beállíthatja a csomagméretet 512 bájtra (a Csomagméret értékének használatával a ConnectionString), ami a legtöbb adatátviteli művelethez elegendő. A legtöbb alkalmazás esetében az alapértelmezett csomagméret a legjobb.
PacketSize 512 és 32767 bájt közötti érték lehet. Kivétel jön létre, ha az érték ezen a tartományon kívül esik.
Ha az alapértelmezett értéket 8000-nél nagyobb számra állítja, akkor a csomagok a sokkal hatékonyabb SinglePage-kiosztó helyett a SQL Server példányán használják a MultiPage-allokátort, ami csökkenti a SQL Server általános méretezhetőségét. A SQL Server memóriahasználatáról további információt a Memory felügyeleti architektúra útmutatójában talál.