TransactedBatchingBehavior 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
트랜잭션 수신을 지원하는 전송에 대해 받기 작업을 최적화하는 동작을 나타냅니다.
public ref class TransactedBatchingBehavior : System::ServiceModel::Description::IEndpointBehavior
public class TransactedBatchingBehavior : System.ServiceModel.Description.IEndpointBehavior
type TransactedBatchingBehavior = class
interface IEndpointBehavior
Public Class TransactedBatchingBehavior
Implements IEndpointBehavior
- 상속
-
TransactedBatchingBehavior
- 구현
예제
다음 예제에서는 구성 파일에서 트랜잭션된 일괄 처리 동작을 서비스에 추가하는 방법을 보여 줍니다.
<system.serviceModel>
<services>
<service name="Microsoft.ServiceModel.Samples.CalculatorService"
behaviorConfiguration="CalculatorServiceBehavior">
<host>
<baseAddresses>
<add baseAddress="http://localhost:8000/ServiceModelSamples/service"/>
</baseAddresses>
</host>
<endpoint address="net.msmq://localhost/private/ServiceModelSamples"
binding="netMsmqBinding"
contract="Microsoft.ServiceModel.Samples.IQueueCalculator" />
<endpoint address="mex"
binding="mexHttpBinding"
contract="IMetadataExchange" />
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="CalculatorServiceBehavior">
<serviceMetadata httpGetEnabled="True"/>
</behavior>
<behavior name="transactedBatching" maxBatchSize="10">
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
다음 예제에서는 코드에서 트랜잭션된 일괄 처리 동작을 서비스에 추가하는 방법을 보여 줍니다.
// Note: Service class must be marked with [ServiceBehavior(ReleaseServiceInstanceOnTransactionComplete=false)].
Uri baseAddress = new Uri("http://localhost:8000/ServiceModelSamples/service");
// Create a ServiceHost for the CalculatorService type.
using (ServiceHost serviceHost = new ServiceHost(typeof(CalculatorService), baseAddress))
{
ServiceEndpoint endpoint;
endpoint = serviceHost.AddServiceEndpoint(typeof(IQueueCalculator), new NetMsmqBinding(),"net.msmq://localhost/private/ServiceModelSamples");
endpoint.Behaviors.Add(new TransactedBatchingBehavior(10));
// Open the ServiceHost to create listeners and start listening for messages.
serviceHost.Open();
// The service can now be accessed.
Console.WriteLine("The service is ready.");
Console.WriteLine("Press <ENTER> to terminate service.");
Console.WriteLine();
Console.ReadLine();
// Close the ServiceHost to shutdown the service.
serviceHost.Close();
}
설명
이 동작으로 구성된 전송에서 여러 개의 받기 작업을 한 번의 트랜잭션으로 일괄 처리하도록 시도합니다. 이렇게 하면 모든 받기 작업에서 트랜잭션을 만들고 이를 커밋하는 비용을 줄일 수 있습니다.
생성자
TransactedBatchingBehavior(Int32) |
지정된 일괄 처리 크기를 사용하여 TransactedBatchingBehavior 클래스의 새 인스턴스를 초기화합니다. |
속성
MaxBatchSize |
한 트랜잭션으로 일괄 처리할 수 있는 최대 받기 작업 수를 가져오거나 설정합니다. |
메서드
Equals(Object) |
지정된 개체가 현재 개체와 같은지 확인합니다. (다음에서 상속됨 Object) |
GetHashCode() |
기본 해시 함수로 작동합니다. (다음에서 상속됨 Object) |
GetType() |
현재 인스턴스의 Type을 가져옵니다. (다음에서 상속됨 Object) |
MemberwiseClone() |
현재 Object의 단순 복사본을 만듭니다. (다음에서 상속됨 Object) |
ToString() |
현재 개체를 나타내는 문자열을 반환합니다. (다음에서 상속됨 Object) |
명시적 인터페이스 구현
IEndpointBehavior.AddBindingParameters(ServiceEndpoint, BindingParameterCollection) |
지정된 서비스 엔드포인트에 바인딩 설정을 적용합니다. 이 메서드는 상속될 수 없습니다. |
IEndpointBehavior.ApplyClientBehavior(ServiceEndpoint, ClientRuntime) |
지정된 서비스 엔드포인트에 트랜잭션 일괄 처리 동작 설정을 적용합니다. 이 메서드는 상속될 수 없습니다. |
IEndpointBehavior.ApplyDispatchBehavior(ServiceEndpoint, EndpointDispatcher) |
엔드포인트 디스패처를 지정된 서비스 엔드포인트에 연결합니다. 이 메서드는 상속될 수 없습니다. |
IEndpointBehavior.Validate(ServiceEndpoint) |
트랜잭션된 받기 작업을 지원하는 바인딩에 대해서만 트랜잭션된 일괄 처리를 적용할 수 있는지 확인합니다. 이 메서드는 상속될 수 없습니다. |
적용 대상
.NET