Aracılığıyla paylaş


SqlConnection.PacketSize Özellik

Tanım

SQL Server örneğiyle iletişim kurmak için kullanılan ağ paketlerinin boyutunu (bayt cinsinden) alır.

public:
 property int PacketSize { int get(); };
public int PacketSize { get; }
member this.PacketSize : int
Public ReadOnly Property PacketSize As Integer

Özellik Değeri

Ağ paketlerinin boyutu (bayt cinsinden). Varsayılan değer 8000'dir.

Örnekler

Aşağıdaki örnek, bağlantı dizesinde değerini 512 olarak ayarlamak Packet Size da dahil olmak üzere bir SqlConnectionoluşturur. konsol penceresinde ve ServerVersion özelliklerini görüntülerPacketSize.

using Microsoft.Data.SqlClient;

class Program
{
    static void Main()
    {
        OpenSqlConnection();
        Console.ReadLine();
    }

    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";
    }
}

Açıklamalar

Bir uygulama toplu kopyalama işlemleri gerçekleştirirse veya çok fazla metin veya görüntü verisi gönderir veya alırsa, ağ okuma ve yazma işlemlerinin daha az olmasına neden olduğundan varsayılandan daha büyük bir paket boyutu verimliliği artırabilir. Bir uygulama az miktarda bilgi gönderir ve alırsa, paket boyutunu 512 bayt olarak ayarlayabilirsiniz (içindeki ConnectionStringPaket Boyutu değerini kullanarak), bu çoğu veri aktarımı işlemi için yeterlidir. Çoğu uygulama için varsayılan paket boyutu en iyisidir.

PacketSize 512 ve 32767 bayt aralığındaki bir değer olabilir. Değer bu aralığın dışındaysa bir özel durum oluşturulur.

Varsayılan değerin 8000'den büyük bir sayıya ayarlanması, paketlerin çok daha verimli SinglePage ayırıcısı yerine SQL Server örneğinde MultiPage ayırıcısını kullanmasına neden olur ve SQL Server genel ölçeklenebilirliğini azaltır. SQL Server belleği nasıl kullandığı hakkında daha fazla bilgi için bkz. Bellek Yönetimi Mimarisi Kılavuzu.

Şunlara uygulanır