Freigeben über


Übersicht über RabbitMQ-Bindungen für Azure Functions

Die Integration von Azure Functions mit RabbitMQ erfolgt über Trigger und Bindungen.

Hinweis

Die RabbitMQ-Bindungen werden nur für Elastic Premium- und Dedicated-Pläne (App Service) vollständig unterstützt. Flex-Verbrauchs - und Verbrauchspläne werden noch nicht unterstützt.

RabbitMQ-Bindungen werden von der Azure Functions v1.x-Laufzeit nicht unterstützt.

Die Azure Functions-Erweiterungen für RabbitMQ ermöglichen das Senden und Empfangen von Nachrichten mithilfe der RabbitMQ-API und Functions.

Aktion type
Ausführen einer Funktion, wenn eine RabbitMQ-Nachricht die Warteschlange durchläuft Auslösen
Senden von RabbitMQ-Nachrichten Ausgabebindung

Voraussetzungen

Bevor Sie mit der RabbitMQ-Erweiterung arbeiten, müssen Sie Ihren RabbitMQ-Endpunkt einrichten. Weitere Informationen zu RabbitMQ finden Sie auf der Seite mit den ersten Schritten.

Installieren der Erweiterung

Das NuGet-Erweiterungspaket, das Sie installieren, hängt vom C#-Modus ab, den Sie in Ihrer Funktions-App verwenden:

Funktionen werden in einem isolierten C#-Workerprozess ausgeführt. Weitere Informationen finden Sie im Leitfaden zum Ausführen von Azure Functions (C#) in einem isolierten Workerprozess.

Fügen Sie ihrem Projekt die Erweiterung hinzu, indem Sie dieses NuGet-Paket installieren.

Installieren des Pakets

Um diese Bindungserweiterung in Ihrer App verwenden zu können, stellen Sie sicher, dass die host.json Datei im Stammverzeichnis Ihres Projekts diesen extensionBundle Verweis enthält:

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

In diesem Beispiel weist der version Wert des [4.0.0, 5.0.0) Funktionenhosts an, eine Bundleversion zu verwenden, die mindestens 4.0.0 aber kleiner ist als 5.0.0, die alle potenziellen Versionen von 4.x enthält. Diese Notation verwaltet Ihre App effektiv auf der neuesten verfügbaren Nebenversion des v4.x-Erweiterungspakets.

Wenn möglich, sollten Sie die neueste Hauptversion des Erweiterungspakets verwenden und der Laufzeit erlauben, die neueste Nebenversion automatisch zu verwalten. Sie können den Inhalt des neuesten Bundles auf der Releaseseite der Erweiterungspakete anzeigen. Weitere Informationen finden Sie unter Azure Functions-Erweiterungspakete.

Einstellungen für „host.json“

In diesem Abschnitt werden die Konfigurationseinstellungen beschrieben, die für diese Bindung in Version 2.x und höher verfügbar sind. Einstellungen in der datei host.json gelten für alle Funktionen in einer Funktions-App-Instanz. Weitere Informationen zu Konfigurationseinstellungen für Funktionen-Apps finden Sie unter host.json Referenz für Azure Functions.

{
    "version": "2.0",
    "extensions": {
        "rabbitMQ": {
            "prefetchCount": 100,
            "queueName": "queue",
            "connectionString": "%<MyConnectionAppSetting>%",
            "port": 10
        }
    }
}
Eigentum Standard Description
prefetchCount 30 Ruft die Anzahl der Nachrichten ab, die der Nachrichtenempfänger gleichzeitig anfordern und zwischengespeichert werden kann, oder legt diese fest.
queueName n/v Name der Warteschlange, von der Nachrichten empfangen werden sollen.
connectionString n/v Die App-Einstellung, die die Verbindungszeichenfolge der RabbitMQ-Nachrichtenwarteschlange enthält.
port 0 (ignoriert, wenn connectionString verwendet wird) Ruft den verwendeten Port ab oder legt den verwendeten Port fest. Der Standardwert ist 0, der auf die Standardporteinstellung des Rabbitmq-Clients verweist: 5672.