Azure Queue Storage-utlösare och bindningar för Azure Functions översikt

Azure Functions kan köras när nya Azure Queue Storage-meddelanden skapas och kan skriva kömeddelanden i en funktion.

Action Typ
Köra en funktion som ändringar i kölagringsdata Utlösare
Skriva lagringsmeddelanden för köer Utdatabindning

Lägga till i Functions-appen

Functions 2.x och senare

När du arbetar med utlösare och bindningar måste du referera till lämpligt paket. NuGet-paketet används för .NET-klassbibliotek medan tilläggspaketet används för alla andra programtyper.

Språk Lägg till efter... Kommentarer
C# Installera [NuGet-paketet], version 3.x
C#-skript, Java, JavaScript, Python, PowerShell Registrera tilläggspaketet Azure Tools-tillägget rekommenderas att använda med Visual Studio Code.
C#-skript (endast online i Azure Portal) Lägga till en bindning Information om hur du uppdaterar befintliga bindningstillägg utan att behöva publicera funktionsappen igen [finns i Uppdatera dina tillägg.]

Storage 5.x och senare

En ny version av Storage-bindningstillägget är tillgänglig som en förhandsversion av NuGet-paketet. Den här förhandsversionen introducerar möjligheten att ansluta med hjälp av en identitet i stället för en hemlighet. För .NET-program ändras även de typer som du kan binda till, vilket ersätter typerna från och med nyare typer från WindowsAzure.Storage Microsoft.Azure.Storage Azure.Storage. Köer.

Anteckning

Förhandsversionspaketet ingår inte i ett tilläggspaketet och måste installeras manuellt. För .NET-appar lägger du till en referens till paketet. Alla andra typer av appar finns i [Uppdatera dina tillägg.]

Functions 1.x

Functions 1.x-appar har automatiskt en referens till Microsoft.Azure.WebJobs NuGet-paketet, version 2.x.

Azure Storage SDK-version i functions 1. x

I funktionerna 1. x använder Storage-utlösare och bindningar version 7.2.1 av Azure Storage SDK (windowsazure. Storage NuGet-paketet). Om du refererar till en annan version av Storage SDK och du binder till en lagrings-SDK-typ i funktions signaturen, kan funktions körningen rapportera att den inte kan bindas till den typen. Lösningen är att se till att projektet refererar till windowsazure. Storage 7.2.1.

host.jspå inställningar

I det här avsnittet beskrivs de globala konfigurationsinställningar som är tillgängliga för den här bindningen i version 2.x och senare. Exemplet på host.jsnedan innehåller endast version 2.x+-inställningarna för den här bindningen. Mer information om globala konfigurationsinställningar i version 2.x och senare finns ihost.jsreferens för Azure Functions.

Anteckning

En referens till host.jsi Functions 1.x finns i host.jsreferens för Azure Functions 1.x.

{
    "version": "2.0",
    "extensions": {
        "queues": {
            "maxPollingInterval": "00:00:02",
            "visibilityTimeout" : "00:00:30",
            "batchSize": 16,
            "maxDequeueCount": 5,
            "newBatchThreshold": 8,
            "messageEncoding": "base64"
        }
    }
}
Egenskap Standardvärde Beskrivning
maxPollingInterval 00:01:00 Det maximala intervallet mellan köröster. Minimiintervallet är 00:00:00.100 (100 ms). Intervallen ökar upp till maxPollingInterval . Standardvärdet för maxPollingInterval är 00:01:00 (1 min). maxPollingInterval får inte vara mindre än 00:00:00.100 (100 ms). I Functions 2.x och senare är datatypen en TimeSpan . I Functions 1.x är det i millisekunder.
visibilityTimeout 00:00:00 Tidsintervallet mellan återförsök när bearbetningen av ett meddelande misslyckas.
batchSize 16 Antalet kömeddelanden som Functions-körningen hämtar samtidigt och processer parallellt. När antalet som bearbetas hamnar på newBatchThreshold hämtar körningen en annan batch och börjar bearbeta dessa meddelanden. Det maximala antalet samtidiga meddelanden som bearbetas per funktion är batchSize alltså plus newBatchThreshold . Den här gränsen gäller separat för varje köutlöst funktion.

Om du vill undvika parallell körning för meddelanden som tas emot i en kö kan du ange batchSize till 1. Den här inställningen eliminerar dock samtidighet så länge funktionsappen bara körs på en enda virtuell dator (VM). Om funktionsappen skalar ut till flera virtuella datorer kan varje virtuell dator köra en instans av varje köutlöst funktion.

Maxvärdet batchSize är 32.
maxDequeueCount 5 Antalet gånger som ett meddelande ska bearbetas innan det flyttas till kön med skadligt meddelande.
newBatchThreshold N*batchSize/2 När antalet meddelanden som bearbetas samtidigt når det här antalet hämtar körningen en annan batch.

Nrepresenterar antalet tillgängliga virtuella processorer när de körs på App Service eller Premium planer. Värdet är 1 för förbrukningsplanen.
messageEncoding base64 Den här inställningen är endast tillgänglig i tilläggsversion 5.0.0 och senare. Det representerar kodningsformatet för meddelanden. Giltiga värden är base64 och none .

Nästa steg