다음을 통해 공유


<serviceThrottling>

WCF(Windows Communication Foundation) 서비스의 스로틀 메커니즘을 지정합니다.

<system.serviceModel>
  <behaviors>
    <serviceBehaviors>
      <serviceBehaviors>의 <behavior>
        <serviceThrottling>

<serviceThrottling maxConcurrentCalls="Integer"
    maxConcurrentInstances="Integer"
    maxConcurrentSessions="Integer" />

특성 및 요소

특성

특성 설명

maxConcurrentCalls

ServiceHost에서 현재 처리되는 메시지 수를 제한하는 양의 정수입니다. 제한을 초과하는 호출은 큐에 대기합니다. 이 값을 0으로 설정하는 것은 Int32.MaxValue로 설정하는 것과 같습니다. 기본값은 16입니다.

maxConcurrentInstances

ServiceHost에서 한 번에 실행하는 InstanceContext 개체 수를 제한하는 양의 정수입니다. 추가 인스턴스 생성 요청은 큐에 대기했다가 인스턴스 수가 한도 아래로 내려가면 완료됩니다. 기본값은 Int32.MaxValue입니다.

maxConcurrentSessions

ServiceHost 개체에서 수락할 수 있는 세션 수를 제한하는 양의 정수입니다.

서비스는 제한을 초과하는 연결을 수락하지만 제한 아래의 채널만 활성화되며 해당 채널에서 메시지를 읽습니다. 이 값을 0으로 설정하는 것은 Int32.MaxValue로 설정하는 것과 같습니다. 기본값은 10입니다.

자식 요소

없음

부모 요소

요소 설명

<endpointBehaviors>의 <behavior>

동작 요소를 지정합니다.

설명

스로틀은 리소스가 과도하게 사용되는 것을 방지하기 위해 동시 호출, 인스턴스 또는 세션 수를 제한합니다.

특성 값에 도달할 때마다 추적이 기록되며 첫 번째 추적이 경고로 기록됩니다.

예제

다음 구성 예제에서는 서비스가 최대 동시 호출 수를 2로 제한하고 최대 동시 인스턴스 수를 10으로 제한하도록 지정합니다. 이 예제 실행에 대한 자세한 예를 보려면 Throttling을 참조하십시오.

<behaviors> 
  <serviceBehaviors> 
    <behavior name="CalculatorServiceBehavior"> 
      <serviceDebug includeExceptionDetailInFaults="False" /> 
      <serviceMetadata httpGetEnabled="True"/> 
      <!-- Specify throttling behavior -->
      <serviceThrottling maxConcurrentCalls="2" 
           maxConcurrentInstances="10"/> 
    </behavior>
  </serviceBehaviors>
</behaviors>

참고 항목

참조

ServiceThrottlingBehavior
ServiceThrottlingElement

기타 리소스

Using ServiceThrottlingBehavior to Control WCF Service Performance