다음을 통해 공유


ServiceBusSender interface

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

속성

entityPath

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

identifier

발신자를 식별하는 데 사용되는 이름입니다. 로그와 예외의 상관 관계를 지정하는 데 사용할 수 있습니다. 지정하지 않거나 비워 두면 임의의 고유 항목이 생성됩니다.

isClosed

보낸 사람 또는 만든 클라이언트가 닫혔으면 true 반환합니다.

메서드

cancelScheduledMessages(Long | Long[], OperationOptionsBase)

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

close()

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

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 보낸 사람 링크가 아직 없는 경우 지정된 메시지를 보냅니다.

  • session 및/또는 partition 활성화된 큐/토픽으로 메시지를 보내려면 메시지에서 각각 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 보낸 사람 링크를 닫습니다. 닫힌 후에는 발신자를 더 이상 작업에 사용할 수 없습니다. QueueClient 또는 TopicClient의 createSender 함수를 사용하여 새 보낸 사람 인스턴스화

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 형식 as-is 저장합니다. JavaScript는 53비트 숫자만 지원하므로 Long 숫자로 변환하면 전체 자릿수가 손실됩니다.

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

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

  • session 및/또는 partition 활성화된 큐/토픽으로 메시지를 보내려면 메시지에서 각각 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>