다음을 통해 공유


SqlConnection.PacketSize 속성

정의

SQL Server의 인스턴스와 통신하는 데 사용하는 네트워크 패킷의 크기(바이트)를 가져옵니다.

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

속성 값

네트워크 패킷의 크기(바이트)입니다. 기본값은 8000입니다.

예제

다음 예제에서는 연결 문자열에서 SqlConnection를 512로 설정하는 Packet Size 것을 포함하여 를 만듭니다. 콘솔 창에 PacketSizeServerVersion 속성이 표시됩니다.

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

설명

애플리케이션 대량 복사 작업을 수행 하거나 많은 양의 텍스트 또는 이미지 데이터를 하는 경우 더 적은 네트워크 하면 되므로 기본 효율성을 향상 시킬 수 있습니다 보다 큰 패킷 크기를 읽기 및 쓰기 작업입니다. 애플리케이션을 보내고 소량의 정보를 수신, 512 바이트 패킷 크기를 설정할 수 있습니다 (패킷 크기 값을 사용 하 여는 ConnectionString), 대부분의 데이터 전송 작업에 충분 한 합니다. 대부분의 애플리케이션에는 기본 패킷 크기가 제일 좋습니다.

PacketSize 는 512바이트 및 32767바이트 범위의 값일 수 있습니다. 값이 이 범위를 벗어나면 예외가 생성됩니다.

기본값을 8000보다 큰 숫자로 설정하면 패킷이 훨씬 더 효율적인 SinglePage 할당자 대신 SQL Server 인스턴스에서 MultiPage 할당자를 사용하여 SQL Server 전반적인 확장성을 줄입니다. SQL Server 메모리를 사용하는 방법에 대한 자세한 내용은 메모리 관리 아키텍처 가이드를 참조하세요.

적용 대상