Azure Functions는 트리거 및 바인딩을 통해 RabbitMQ와 통합됩니다.
참고 항목
RabbitMQ 바인딩은 Elastic Premium 및 Dedicated(App Service) 계획에서만 완전히 지원됩니다. Flex 소비 및 소비 계획은 아직 지원되지 않습니다.
RabbitMQ 바인딩은 Azure Functions v1.x 런타임에서 지원되지 않습니다.
Azure Functions RabbitMQ 확장을 사용하면 함수를 사용하여 RabbitMQ API를 사용하여 메시지를 보내고 받을 수 있습니다.
| 작업 | 유형 |
|---|---|
| 큐를 통해 RabbitMQ 메시지가 들어올 때 함수를 실행합니다. | 트리거 |
| RabbitMQ 메시지 보내기 | 출력 바인딩 |
필수 조건
RabbitMQ 확장을 사용하기 전에 RabbitMQ 엔드포인트를 설정해야 합니다. RabbitMQ에 대해 자세히 알아보려면 시작하기 페이지를 참조하세요.
확장 설치
설치하는 확장 NuGet 패키지는 함수 앱에서 사용 중인 C# 모드에 따라 다릅니다.
Functions는 격리된 C# 작업자 프로세스에서 실행됩니다. 자세한 내용은 격리된 작업자 프로세스에서 C# Azure Functions 실행 가이드를 참조하세요.
이 NuGet 패키지를 설치하여 프로젝트에 확장을 추가합니다.
번들 설치
앱에서 이 바인딩 확장을 사용하려면 프로젝트 루트의 host.json 파일에 다음 extensionBundle 참조가 포함되어 있는지 확인합니다.
{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle",
"version": "[4.0.0, 5.0.0)"
}
}
이 예제에서 값 version 은 [4.0.0, 5.0.0) Functions 호스트가 4.x의 모든 잠재적 버전을 포함하는 최소 4.0.0 하지만 보다 5.0.0작은 번들 버전을 사용하도록 지시합니다. 이 표기법은 v4.x 확장 번들의 사용 가능한 최신 부 버전에서 앱을 효과적으로 유지 관리합니다.
가능하면 최신 확장 번들 주 버전을 사용하고 런타임에서 최신 부 버전을 자동으로 유지하도록 허용해야 합니다. 확장 번들 릴리스 페이지에서 최신 번들의 콘텐츠를 볼 수 있습니다. 자세한 내용은 Azure Functions 확장 번들을 참조하세요.
host.json 설정
이 섹션에서는 버전 2.x 이상에서 이 바인딩에 사용할 수 있는 구성 설정을 설명합니다. host.json 파일의 설정은 함수 앱 인스턴스의 모든 함수에 적용됩니다. 함수 앱 구성 설정에 대한 자세한 내용은 Azure Functions에 대한host.json 참조를 참조하세요.
{
"version": "2.0",
"extensions": {
"rabbitMQ": {
"prefetchCount": 100,
"queueName": "queue",
"connectionString": "%<MyConnectionAppSetting>%",
"port": 10
}
}
}
| 재산 | Default | Description |
|---|---|---|
prefetchCount |
30 | 메시지 수신자가 동시에 요청하고 캐시할 수 있는 메시지 수를 가져오거나 설정합니다. |
queueName |
해당 없음 | 메시지를 받을 큐의 이름입니다. |
connectionString |
해당 없음 | RabbitMQ 메시지 큐 연결 문자열을 포함하는 앱 설정입니다. |
port |
0 | (connectionString을 사용하는 경우 무시됨) 사용된 포트를 가져오거나 설정합니다. 기본값은 rabbitmq 클라이언트의 기본 포트 설정인 5672를 가리키는 0입니다. |