다음을 통해 공유


ServiceBusSender interface

발신자는 메시지를 보내고, 나중에 보낼 메시지를 예약하고, 예약된 메시지를 취소하는 데 사용할 수 있습니다. createSender ServiceBusClient의 함수를 사용하여 발신자를 인스턴스화합니다. Sender 클래스는 기본 AMQP 보낸 사람 링크를 통해 추상화됩니다.

속성

entityPath

발신자가 만들어진 엔터티의 경로입니다.

identifier

보낸 사람 식별에 사용되는 이름입니다. 로그와 예외의 상관 관계를 지정하는 데 사용할 수 있습니다. 지정하지 않았거나 비어 있으면 임의의 고유 항목이 생성됩니다.

isClosed

보낸 사람 또는 보낸 클라이언트가 닫힌 경우 를 반환 true 합니다.

메서드

cancelScheduledMessages(Long | Long[], OperationOptionsBase)

ServiceBus 큐/구독에 표시되도록 예약된 여러 메시지를 취소합니다.

close()

기본 AMQP 보낸 사람 링크를 닫습니다. 닫힌 후에는 발신자를 추가 작업에 사용할 수 없습니다. createSender QueueClient 또는 TopicClient의 함수를 사용하여 새 보낸 사람 인스턴스화

createMessageBatch(CreateMessageBatchOptions)

지원되는 최대 크기에 도달할 때까지 메시지를 추가할 수 있는 인스턴스 ServiceBusMessageBatch 를 만듭니다. 일괄 처리를 메서드에 전달하여 <xref:send> 메시지를 Azure Service Bus 보낼 수 있습니다.

scheduleMessages(ServiceBusMessage | AmqpAnnotatedMessage | ServiceBusMessage[] | AmqpAnnotatedMessage[], Date, OperationOptionsBase)

지정된 메시지가 나중에 Service Bus 큐/구독에 표시되도록 예약합니다.

sendMessages(ServiceBusMessage | ServiceBusMessageBatch | AmqpAnnotatedMessage | ServiceBusMessage[] | AmqpAnnotatedMessage[], OperationOptionsBase)

AMQP 보낸 사람 링크가 아직 없는 경우 지정된 메시지를 보냅니다.

  • 및/또는 partition 활성화된 큐/토픽으로 메시지를 session 보내려면 메시지에서 sessionId 각각 및/또는 partitionKey 속성을 설정합니다.
  • 동일한 sendMessages() 호출에 전달된 모든 메시지는 동일한 sessionId (세션을 사용하는 경우) 및 동일 partitionKey 해야 합니다(파티션을 사용하는 경우).

참고:

크기가 1MB보다 큰 메시지를 보내려면 일괄 처리된 메시지 또는 아래와 같은 메시지 배열을 보내는 대신 개별 메시지를 보내주세요.

await sender.sendMessages(message);

일괄 처리된 메시지는 아직 더 큰 메시지를 보낼 수 없기 때문입니다. force detached 이 경우 오류가 발생합니다. service-bus-premium-messaging#large-messages-support를 읽습니다. 자세한 내용은 #23014를 참조하세요.

속성 세부 정보

entityPath

발신자가 만들어진 엔터티의 경로입니다.

entityPath: string

속성 값

string

identifier

보낸 사람 식별에 사용되는 이름입니다. 로그와 예외의 상관 관계를 지정하는 데 사용할 수 있습니다. 지정하지 않았거나 비어 있으면 임의의 고유 항목이 생성됩니다.

identifier: string

속성 값

string

isClosed

보낸 사람 또는 보낸 클라이언트가 닫힌 경우 를 반환 true 합니다.

isClosed: boolean

속성 값

boolean

메서드 세부 정보

cancelScheduledMessages(Long | Long[], OperationOptionsBase)

ServiceBus 큐/구독에 표시되도록 예약된 여러 메시지를 취소합니다.

function cancelScheduledMessages(sequenceNumbers: Long | Long[], options?: OperationOptionsBase): Promise<void>

매개 변수

sequenceNumbers

Long | Long[]

취소할 메시지의 시퀀스 번호 또는 시퀀스 번호 배열입니다.

options
OperationOptionsBase

중단 신호 또는 추적 옵션을 전달하는 옵션 모음입니다.

반환

Promise<void>

close()

기본 AMQP 보낸 사람 링크를 닫습니다. 닫힌 후에는 발신자를 추가 작업에 사용할 수 없습니다. createSender QueueClient 또는 TopicClient의 함수를 사용하여 새 보낸 사람 인스턴스화

function close(): Promise<void>

반환

Promise<void>

createMessageBatch(CreateMessageBatchOptions)

지원되는 최대 크기에 도달할 때까지 메시지를 추가할 수 있는 인스턴스 ServiceBusMessageBatch 를 만듭니다. 일괄 처리를 메서드에 전달하여 <xref:send> 메시지를 Azure Service Bus 보낼 수 있습니다.

function createMessageBatch(options?: CreateMessageBatchOptions): Promise<ServiceBusMessageBatch>

매개 변수

options
CreateMessageBatchOptions

일괄 처리의 동작을 구성합니다.

  • maxSizeInBytes: 일괄 처리 크기에 대한 상한입니다. 이 제한에 tryAdd 도달하면 함수가 반환 false 됩니다.

반환

scheduleMessages(ServiceBusMessage | AmqpAnnotatedMessage | ServiceBusMessage[] | AmqpAnnotatedMessage[], Date, OperationOptionsBase)

지정된 메시지가 나중에 Service Bus 큐/구독에 표시되도록 예약합니다.

function scheduleMessages(messages: ServiceBusMessage | AmqpAnnotatedMessage | ServiceBusMessage[] | AmqpAnnotatedMessage[], scheduledEnqueueTimeUtc: Date, options?: OperationOptionsBase): Promise<Long[]>

매개 변수

messages

ServiceBusMessage | AmqpAnnotatedMessage | ServiceBusMessage[] | AmqpAnnotatedMessage[]

메시지 또는 예약해야 하는 메시지 배열입니다.

scheduledEnqueueTimeUtc

Date

메시지를 큐에 포함해야 하는 UTC 시간입니다.

options
OperationOptionsBase

중단 신호 또는 추적 옵션을 전달하는 옵션 모음입니다.

반환

Promise<Long[]>

예약된 메시지의 시퀀스 번호입니다. 메시지 예약을 취소하려면 시퀀스 번호가 필요합니다. Long 숫자로 변환하지 않고 애플리케이션에서 형식을 있는 그대로 저장합니다. JavaScript는 53비트 숫자만 지원하므로 를 숫자로 변환 Long 하면 전체 자릿수가 손실됩니다.

sendMessages(ServiceBusMessage | ServiceBusMessageBatch | AmqpAnnotatedMessage | ServiceBusMessage[] | AmqpAnnotatedMessage[], OperationOptionsBase)

AMQP 보낸 사람 링크가 아직 없는 경우 지정된 메시지를 보냅니다.

  • 및/또는 partition 활성화된 큐/토픽으로 메시지를 session 보내려면 메시지에서 sessionId 각각 및/또는 partitionKey 속성을 설정합니다.
  • 동일한 sendMessages() 호출에 전달된 모든 메시지는 동일한 sessionId (세션을 사용하는 경우) 및 동일 partitionKey 해야 합니다(파티션을 사용하는 경우).

참고:

크기가 1MB보다 큰 메시지를 보내려면 일괄 처리된 메시지 또는 아래와 같은 메시지 배열을 보내는 대신 개별 메시지를 보내주세요.

await sender.sendMessages(message);

일괄 처리된 메시지는 아직 더 큰 메시지를 보낼 수 없기 때문입니다. force detached 이 경우 오류가 발생합니다. service-bus-premium-messaging#large-messages-support를 읽습니다. 자세한 내용은 #23014를 참조하세요.

function sendMessages(messages: ServiceBusMessage | ServiceBusMessageBatch | AmqpAnnotatedMessage | ServiceBusMessage[] | AmqpAnnotatedMessage[], options?: OperationOptionsBase): Promise<void>

매개 변수

messages

ServiceBusMessage | ServiceBusMessageBatch | AmqpAnnotatedMessage | ServiceBusMessage[] | AmqpAnnotatedMessage[]

단일 메시지 또는 메시지 배열 또는 보낼 createBatch() 메서드를 통해 만든 메시지 일괄 처리입니다.

options
OperationOptionsBase

중단 신호 또는 추적 옵션을 전달하는 옵션 모음입니다.

반환

Promise<void>