다음을 통해 공유


@azure/event-hubs package

클래스

EventHubBufferedProducerClient

EventHubBufferedProducerClient특정 이벤트 허브에 이벤트를 게시하는 데 사용됩니다.

EventHubBufferedProducerClient 이벤트를 즉시 게시하지 않습니다. 대신, 이벤트가 버퍼링되므로 일괄 처리가 가득 차거나 새 이벤트가 큐에 표시되지 않고 maxWaitTimeInMs 경과했을 때 효율적으로 일괄 처리 및 게시할 수 있습니다.

이벤트가 큐에 포함될 때 지정된 옵션에 따라 파티션에 자동으로 할당되거나, 지정된 파티션 키에 따라 그룹화되거나, 특별히 요청된 파티션이 할당될 수 있습니다.

이 모델은 이벤트가 게시될 시기에 대해 결정적이지 않은 타이밍의 비용으로 호출자에서 일괄 처리 관리의 부담을 전환하기 위한 것입니다. 고려해야 할 추가 장차도 있습니다.

  • 애플리케이션이 충돌하는 경우 버퍼의 이벤트는 게시되지 않습니다. 데이터 손실을 방지하기 위해 호출자는 onSendEventsSuccessHandleronSendEventsErrorHandler 처리기를 사용하여 게시 진행률을 추적하는 것이 좋습니다.
  • 파티션 키를 지정하는 이벤트에는 다른 생산자와 동일한 키를 사용하는 파티션과 다른 파티션이 할당될 수 있습니다.
  • 파티션을 일시적으로 사용할 수 없게 되는 드문 경우 EventHubBufferedProducerClient 다른 생산자보다 복구하는 데 더 오래 걸릴 수 있습니다.

결정적 결과로 이벤트를 즉시 게시하는 것이 중요한 시나리오에서는 파티션 키가 다른 게시자와 일치하는 파티션에 할당되었는지 또는 가용성 극대화가 요구 사항인 경우 EventHubProducerClient 사용하는 것이 좋습니다.

EventHubConsumerClient

EventHubConsumerClient 클래스는 Event Hub의 이벤트를 사용하는 데 사용됩니다.

EventHubConsumerClient 만드는 방법에는 여러 가지가 있습니다.

  • Event Hub 인스턴스에 대해 만든 SAS 정책의 연결 문자열을 사용합니다.
  • Event Hub 네임스페이스에 대해 만든 SAS 정책의 연결 문자열 및 Event Hub 인스턴스의 이름 사용
  • <yournamespace>.servicebus.windows.net같은 전체 네임스페이스 및 자격 증명 개체를 사용합니다.

필요에 따라 다음을 전달할 수도 있습니다.

  • 다시 시도 정책 또는 프록시 설정을 구성하는 옵션 모음입니다.
  • 클라이언트가 검사점을 읽고 애플리케이션이 다시 시작될 때 이벤트 수신을 다시 시작해야 하는 위치를 결정하는 데 사용되는 검사점 저장소입니다. 검사점 저장소는 클라이언트에서 애플리케이션의 여러 인스턴스 부하를 분산하는 데도 사용됩니다.
EventHubProducerClient

EventHubProducerClient 클래스는 이벤트 허브에 이벤트를 보내는 데 사용됩니다.

EventHubProducerClient 만드는 방법에는 여러 가지가 있습니다.

  • Event Hub 인스턴스에 대해 만든 SAS 정책의 연결 문자열을 사용합니다.
  • Event Hub 네임스페이스에 대해 만든 SAS 정책의 연결 문자열 및 Event Hub 인스턴스의 이름 사용
  • <yournamespace>.servicebus.windows.net같은 전체 네임스페이스 및 자격 증명 개체를 사용합니다.

필요에 따라 옵션 모음을 전달하여 재시도 정책 또는 프록시 설정을 구성할 수도 있습니다.

MessagingError

메시징 오류의 기본 클래스에 대해 설명합니다.

인터페이스

BufferedCloseOptions

EventHubBufferedProducerClient close 메서드를 구성하는 옵션입니다.

BufferedFlushOptions

EventHubBufferedProducerClient flush 메서드를 구성하는 옵션입니다.

Checkpoint

검사점은 Event Hub 인스턴스에 있는 소비자 그룹의 특정 파티션에서 사용자가 마지막으로 성공적으로 처리한 이벤트를 나타내기 위한 것입니다.

사용자가 PartitionProcessor 클래스의 updateCheckpoint() 메서드를 호출하면 내부적으로 Checkpoint 만들어집니다. 그런 다음 EventProcessor만들 때 사용자가 선택한 CheckpointManager 의해 구현되는 스토리지 솔루션에 저장됩니다.

사용자는 Checkpoint 직접 상호 작용할 것으로 예상되지 않습니다. 이 인터페이스는 EventProcessorCheckpointManager내부 작업을 지원하기 위해 존재합니다.

CheckpointStore

검사점은 이벤트 허브 인스턴스의 지정된 소비자 그룹에 있는 각 파티션에 대한 파티션 소유권 정보 및 검사점 세부 정보를 저장하고 검색합니다.

사용자는 CheckpointStore구현하지 않습니다. 사용자는 이 인터페이스의 기존 구현을 선택하고, 인스턴스화하고, 클라이언트를 인스턴스화할 때 EventHubConsumerClient 클래스 생성자에 전달해야 합니다. 사용자는 검사점 저장소에서 메서드를 사용할 것으로 예상되지 않습니다. 이러한 메서드는 클라이언트에서 내부적으로 사용됩니다.

CheckpointStore 구현은 접두사 @azure/eventhub-checkpointstore-를 사용하여 패키지를 검색하여 npm에서 찾을 수 있습니다.

CreateBatchOptions

EventHubProducerClient createBatch 메서드를 구성하는 옵션입니다.

  • partitionKey: 파티션 할당을 생성하기 위해 해시되는 값입니다.
  • maxSizeInBytes: 일괄 처리 크기에 대한 상한입니다.
  • abortSignal: 보내기 작업을 취소하라는 요청을 알리는 신호입니다.

사용 예:

{
    partitionKey: 'foo',
    maxSizeInBytes: 1024 * 1024 // 1 MB
}
EnqueueEventOptions

EventHubBufferedProducerClient enqueueEvents 메서드를 구성하는 옵션입니다.

EventData

Event Hub로 보낼 데이터를 설명하는 인터페이스입니다. EventHubProducerClient사용할 때 보낼 개체를 만들 때 이를 참조로 사용합니다. 예를 들어 { body: "your-data" } 또는

{
   body: "your-data",
   properties: {
      propertyName: "property value"
   }
}
EventDataAdapterParameters

이벤트 데이터 어댑터를 만드는 createEventDataAdapter 함수에 대한 매개 변수입니다.

EventDataBatch

이벤트 허브에 이벤트를 보내는 데 사용할 수 있는 이벤트 일괄 처리를 나타내는 인터페이스입니다.

일괄 처리를 만들려면 EventHubProducerClientcreateBatch() 메서드를 사용합니다. 일괄 처리를 보내려면 동일한 클라이언트에서 sendBatch() 메서드를 사용합니다. 일괄 처리를 채우려면 일괄 처리 자체에서 tryAdd() 메서드를 사용합니다.

EventHubBufferedProducerClientOptions

EventHubBufferedProducerClient만드는 동안 제공할 수 있는 옵션에 대해 설명합니다.

EventHubClientOptions

EventHubClient를 만드는 동안 제공할 수 있는 옵션에 대해 설명합니다.

  • userAgent: 서비스에 연결 속성으로 전달되는 기본 제공 사용자 에이전트 문자열에 추가할 문자열입니다.
  • webSocketOptions: 웹 소켓을 통해 AMQP 연결의 채널링을 구성하는 옵션입니다.
    • websocket: WebSocket을 통해 연결을 선택하는 경우 AMQP 연결을 만드는 데 사용되는 WebSocket 생성자입니다.
    • webSocketConstructorOptions: WebSocket을 통해 연결을 선택할 때 Websocket 생성자에 전달하는 옵션입니다.
  • retryOptions: 클라이언트/생산자/소비자의 모든 작업에 대한 재시도 옵션입니다.
    • maxRetries: 재시도 가능한 오류가 발생할 경우 작업을 다시 시도할 수 있는 횟수입니다.
    • maxRetryDelayInMs: 재시도 사이의 최대 지연 시간입니다. 지수 재시도를 수행하는 경우에만 적용됩니다.
    • mode: RetryMode 열거형에 지정된 적용할 재시도 모드입니다. 옵션은 ExponentialFixed. 기본값은 Fixed.
    • retryDelayInMs: 다음 시도를 하기 전에 대기하는 시간(밀리초)입니다. mode Exponential설정되면 재시도 사이에 기하급수적으로 증가하는 지연을 계산하는 데 사용됩니다. 기본값: 30000밀리초
    • timeoutInMs: 작업 시간이 초과되기 전에 대기할 시간(밀리초)입니다. 이 경우 재시도 시도가 남아 있는 경우 다시 시도가 트리거됩니다. 기본값: 60000밀리초

간단한 사용은 { "maxRetries": 4 }수 있습니다.

사용 예:

{
    retryOptions: {
        maxRetries: 4
    }
}
EventHubConnectionStringProperties

이벤트 허브 연결 문자열을 구성하는 속성 집합입니다.

EventHubConsumerClientOptions

EventHubConsumerClient를 만드는 동안 제공할 수 있는 옵션에 대해 설명합니다.

  • loadBalancingOptions: EventHubConsumerClient가 파티션을 클레임하는 방법을 조정하는 옵션입니다.
  • userAgent: 서비스에 연결 속성으로 전달되는 기본 제공 사용자 에이전트 문자열에 추가할 문자열입니다.
  • webSocketOptions: 웹 소켓을 통해 AMQP 연결의 채널링을 구성하는 옵션입니다.
    • websocket: WebSocket을 통해 연결을 선택하는 경우 AMQP 연결을 만드는 데 사용되는 WebSocket 생성자입니다.
    • webSocketConstructorOptions: WebSocket을 통해 연결을 선택할 때 Websocket 생성자에 전달하는 옵션입니다.
  • retryOptions: 클라이언트/생산자/소비자의 모든 작업에 대한 재시도 옵션입니다.
    • maxRetries: 재시도 가능한 오류가 발생할 경우 작업을 다시 시도할 수 있는 횟수입니다.
    • maxRetryDelayInMs: 재시도 사이의 최대 지연 시간입니다. 지수 재시도를 수행하는 경우에만 적용됩니다.
    • mode: RetryMode 열거형에 지정된 적용할 재시도 모드입니다. 옵션은 ExponentialFixed. 기본값은 Fixed.
    • retryDelayInMs: 다음 시도를 하기 전에 대기하는 시간(밀리초)입니다. mode Exponential설정되면 재시도 사이에 기하급수적으로 증가하는 지연을 계산하는 데 사용됩니다. 기본값: 30000밀리초
    • timeoutInMs: 작업 시간이 초과되기 전에 대기할 시간(밀리초)입니다. 이 경우 재시도 시도가 남아 있는 경우 다시 시도가 트리거됩니다. 기본값: 60000밀리초

간단한 사용은 { "maxRetries": 4 }수 있습니다.

사용 예:

{
    retryOptions: {
        maxRetries: 4
    }
}
EventHubProperties

이벤트 허브의 런타임 정보를 설명합니다.

EventPosition

이벤트 허브 파티션에서 이벤트의 위치를 나타내며, 일반적으로 EventHubConsumerClientsubscribe() 메서드를 호출하여 이벤트 수신을 시작할 파티션의 위치를 지정할 때 사용됩니다.

스트림의 시작 또는 끝을 나타내는 EventPosition을 얻으려면 상수 earliestEventPositionlatestEventPosition 각각 사용합니다.

GetEventHubPropertiesOptions

getEventHubProperties동작을 구성하는 옵션 집합입니다.

  • abortSignal: 작업을 취소하라는 요청을 알리는 AbortSignalLike 인터페이스의 구현입니다.
  • parentSpan: 이 작업을 호출하는 동안 만든 범위의 parent 사용할 Span 또는 SpanContext.
GetPartitionIdsOptions

getPartitionIds동작을 구성하는 옵션 집합입니다.

  • abortSignal: 작업을 취소하라는 요청을 알리는 AbortSignalLike 인터페이스의 구현입니다.
  • parentSpan: 이 작업을 호출하는 동안 만든 범위의 parent 사용할 Span 또는 SpanContext.
GetPartitionPropertiesOptions

getPartitionProperties동작을 구성하는 옵션 집합입니다.

  • abortSignal: 작업을 취소하라는 요청을 알리는 AbortSignalLike 인터페이스의 구현입니다.
  • parentSpan: 이 작업을 호출하는 동안 만든 범위의 parent 사용할 Span 또는 SpanContext.
LastEnqueuedEventProperties

Event Hubs 서비스에서 이벤트가 수신될 때 소비자가 관찰한 파티션의 마지막 큐에 포함된 이벤트에 대한 정보 집합입니다.

LoadBalancingOptions

부하 분산 설정을 구성하는 옵션 모음입니다.

OnSendEventsErrorContext

이벤트 허브로 성공적으로 전송되지 않은 이벤트, 할당된 파티션 및 보내는 동안 발생한 오류를 포함합니다.

OnSendEventsSuccessContext

이벤트 허브로 성공적으로 전송된 이벤트와 할당된 파티션을 포함합니다.

OperationOptions

추적 및 abortSignal을 구성하는 옵션입니다.

PartitionContext

SubscriptionEventHandlers일부인 각 함수에 전달되는 컨텍스트를 설명하는 인터페이스입니다. 이러한 함수를 구현할 때 컨텍스트 개체를 사용하여 파티션에 대한 정보와 검사점 기능을 가져옵니다.

PartitionOwnership

이벤트 허브 인스턴스의 소비자 그룹에서 지정된 파티션의 처리를 소유하는 EventProcessor 인스턴스에 대한 세부 정보를 나타내는 인터페이스입니다.

참고: EventProcessor 내부적으로 사용되며 사용자가 직접 만들 필요가 없습니다.

PartitionProperties

EventHub 파티션의 런타임 정보를 설명합니다.

ReceivedEventData

이벤트 허브에서 받은 이벤트의 구조를 설명하는 인터페이스입니다. EventHubConsumerClient사용할 때 이벤트 허브에서 받은 이벤트를 처리하는 processEvents 함수를 만들 때 이를 참조로 사용합니다.

RetryOptions

모드, 재시도 횟수, 재시도 간격 등을 결정하는 재시도 정책 옵션입니다.

SendBatchOptions

이벤트 배열을 보낼 때 EventHubProducerClientsendBatch 메서드를 구성하는 옵션입니다. partitionId 설정되면 partitionKey 설정해서는 안 되며 그 반대의 경우도 마찬가지입니다.

  • partitionId: 이 일괄 처리가 전송되는 파티션입니다.
  • partitionKey: 파티션 할당을 생성하기 위해 해시되는 값입니다.
  • abortSignal: 보내기 작업을 취소하는 데 사용되는 신호입니다.
SubscribeOptions

EventHubConsumerClient subscribe 메서드를 구성하는 옵션입니다. 예를 들어 { maxBatchSize: 20, maxWaitTimeInSeconds: 120, startPosition: { sequenceNumber: 123 } }

Subscription

EventHubConsumerClient subscribe() 메서드에서 반환된 개체를 설명하는 인터페이스입니다.

SubscriptionEventHandlers

이벤트 허브에서 이벤트를 수신하기 위해 subscribe() 메서드를 호출할 때 EventHubConsumerClient 호출되는 사용자가 구현할 함수를 설명하는 인터페이스입니다.

TokenCredential

인증 토큰을 제공할 수 있는 자격 증명을 나타냅니다.

TryAddOptions

EventDataBatch 클래스에서 tryAdd 메서드의 동작을 구성하는 옵션입니다.

WebSocketImpl

WebSocket 생성자의 필수 셰이프에 대해 설명합니다.

WebSocketOptions

웹 소켓을 통해 AMQP 연결의 채널링을 구성하는 옵션입니다.

형식 별칭

ProcessCloseHandler

파티션에서 이벤트를 수신하기 위해 중지한 직후 EventHubConsumerClient 호출한 사용자 제공 함수의 서명입니다.

ProcessErrorHandler

이벤트를 수신하거나 사용자가 제공한 함수를 실행할 때 발생하는 오류에 대해 EventHubConsumerClient 호출한 사용자 제공 함수의 서명이 subscribe() 메서드에 전달됩니다.

ProcessEventsHandler

이벤트 집합이 수신될 때 EventHubConsumerClient 호출하는 사용자 제공 함수의 서명입니다.

ProcessInitializeHandler

파티션에서 이벤트를 받기 시작하기 직전에 EventHubConsumerClient 호출한 사용자 제공 함수의 서명입니다.

열거형

CloseReason

EventHubConsumerClient 이벤트 허브의 소비자 그룹의 파티션에서 이벤트 처리를 중지하는 다양한 이유를 나타내는 열거형입니다.

RetryMode

재시도 모드 유형에 대해 설명합니다.

함수

createEventDataAdapter(EventDataAdapterParameters)

이벤트 데이터 어댑터를 생성하는 함수입니다. 해당 어댑터를 @azure/schema-registry-avro 사용하여 이벤트 데이터의 본문을 인코딩하고 디코딩할 수 있습니다.

parseEventHubConnectionString(string)

지정된 연결 문자열을 Azure Event Hubs에 적용 가능한 다른 속성으로 구문 분석합니다. 이 속성은 EventHubProducerClient 또는 EventHubConsumerClient를 생성하는 데 유용합니다.

함수 세부 정보

createEventDataAdapter(EventDataAdapterParameters)

이벤트 데이터 어댑터를 생성하는 함수입니다. 해당 어댑터를 @azure/schema-registry-avro 사용하여 이벤트 데이터의 본문을 인코딩하고 디코딩할 수 있습니다.

function createEventDataAdapter(params?: EventDataAdapterParameters): MessageAdapter<EventData>

매개 변수

params
EventDataAdapterParameters

이벤트 데이터를 만드는 매개 변수

반환

MessageAdapter<EventData>

이벤트 데이터를 생성하고 사용할 수 있는 이벤트 데이터 어댑터

parseEventHubConnectionString(string)

지정된 연결 문자열을 Azure Event Hubs에 적용 가능한 다른 속성으로 구문 분석합니다. 이 속성은 EventHubProducerClient 또는 EventHubConsumerClient를 생성하는 데 유용합니다.

function parseEventHubConnectionString(connectionString: string): Readonly<EventHubConnectionStringProperties>

매개 변수

connectionString

string

Event Hubs 네임스페이스에 대해 만든 공유 액세스 정책과 연결된 연결 문자열입니다.

반환