Udostępnij za pomocą


Omówienie powiązań RabbitMQ dla usługi Azure Functions

Usługa Azure Functions integruje się z aplikacją RabbitMQ za pośrednictwem wyzwalaczy i powiązań.

Uwaga

Powiązania RabbitMQ są w pełni obsługiwane tylko w planach Elastic Premium i Dedicated (App Service). Plany Flex Consumption i Consumption nie są jeszcze obsługiwane.

Powiązania RabbitMQ nie są obsługiwane przez środowisko uruchomieniowe usługi Azure Functions w wersji 1.x.

Rozszerzenie RabbitMQ usługi Azure Functions umożliwia wysyłanie i odbieranie komunikatów przy użyciu interfejsu API RabbitMQ z funkcjami.

Akcja Typ
Uruchamianie funkcji, gdy komunikat RabbitMQ przechodzi przez kolejkę Wyzwalacz
Wysyłanie komunikatów RabbitMQ Powiązanie wyjściowe

Wymagania wstępne

Przed rozpoczęciem pracy z rozszerzeniem RabbitMQ należy skonfigurować punkt końcowy RabbitMQ. Aby dowiedzieć się więcej o RabbitMQ, zobacz stronę wprowadzenie.

Instalowanie rozszerzenia

Instalowany pakiet NuGet rozszerzenia zależy od trybu języka C#, którego używasz w aplikacji funkcji:

Funkcje są wykonywane w izolowanym procesie roboczym języka C#. Aby dowiedzieć się więcej, zobacz Przewodnik dotyczący uruchamiania usługi Azure Functions w języku C# w izolowanym procesie roboczym.

Dodaj rozszerzenie do projektu, instalując ten pakiet NuGet.

Instalowanie pakietu

Aby móc używać tego rozszerzenia powiązania w aplikacji, upewnij się, że plik host.json w katalogu głównym projektu zawiera następujące extensionBundle odwołanie:

{
    "version": "2.0",
    "extensionBundle": {
        "id": "Microsoft.Azure.Functions.ExtensionBundle",
        "version": "[4.0.0, 5.0.0)"
    }
}

W tym przykładzie version[4.0.0, 5.0.0) wartość polecenia nakazuje hostowi usługi Functions użycie wersji pakietu, która jest co najmniej 4.0.0 mniejsza niż 5.0.0, która zawiera wszystkie potencjalne wersje 4.x. Ta notacja skutecznie utrzymuje aplikację w najnowszej dostępnej wersji pomocniczej pakietu rozszerzenia v4.x.

Jeśli to możliwe, należy użyć najnowszej wersji głównej pakietu rozszerzeń i zezwolić środowisku uruchomieniowemu na automatyczne utrzymywanie najnowszej wersji pomocniczej. Zawartość najnowszego pakietu można wyświetlić na stronie wydania pakietów rozszerzeń. Aby uzyskać więcej informacji, zobacz Pakiety rozszerzeń usługi Azure Functions.

ustawienia pliku host.json

W tej sekcji opisano ustawienia konfiguracji dostępne dla tego powiązania w wersji 2.x lub nowszej. Ustawienia w pliku host.json mają zastosowanie do wszystkich funkcji w wystąpieniu aplikacji funkcji. Aby uzyskać więcej informacji na temat ustawień konfiguracji aplikacji funkcji, zobacz host.json dokumentacja usługi Azure Functions.

{
    "version": "2.0",
    "extensions": {
        "rabbitMQ": {
            "prefetchCount": 100,
            "queueName": "queue",
            "connectionString": "%<MyConnectionAppSetting>%",
            "port": 10
        }
    }
}
Majątek Default Description
prefetchCount 30 Pobiera lub ustawia liczbę komunikatów, które odbiornik komunikatów może jednocześnie żądać i jest buforowany.
queueName N/a Nazwa kolejki do odbierania komunikatów.
connectionString N/a Ustawienie aplikacji zawierające parametry połączenia kolejki komunikatów RabbitMQ.
port 0 (ignorowane w przypadku używania parametru connectionString) Pobiera lub ustawia używany port. Wartość domyślna to 0, co wskazuje domyślne ustawienie portu klienta rabbitmq: 5672.