Azure Queue Storage-eseményindító az Azure Functionshez
A várólista-tároló eseményindítója egy függvényt futtat, amikor a rendszer üzeneteket ad hozzá az Azure Queue Storage-hoz.
Az Azure Queue Storage használati és prémium csomagokkal kapcsolatos skálázási döntései célalapú skálázással érhetők el. További információ: Célalapú skálázás.
Fontos
Ez a cikk lapokat használ a Node.js programozási modell több verziójának támogatásához. A v4-modell általánosan elérhető, és úgy lett kialakítva, hogy rugalmasabb és intuitívabb felhasználói élményt nyújtson JavaScript- és TypeScript-fejlesztők számára. A v4-modell működésével kapcsolatos további információkért tekintse meg az Azure Functions Node.js fejlesztői útmutatóját. A v3 és a v4 közötti különbségekről a migrálási útmutatóban olvashat bővebben.
Az Azure Functions két Python-programozási modellt támogat. A kötések definiálásának módja a választott programozási modelltől függ.
A Python v2 programozási modell lehetővé teszi, hogy a kötéseket dekorátorokkal definiálja közvetlenül a Python-függvénykódban. További információt a Python fejlesztői útmutatójában talál.
Ez a cikk mindkét programozási modellt támogatja.
Példa
Az üzenetsor-eseményindítóval elindíthat egy függvényt, amikor új elem érkezik egy üzenetsorba. A várakozó üzenetet a függvény bemeneteként adja át.
A C#-függvények a következő C#-módok egyikével hozhatók létre:
- Izolált feldolgozómodell: Lefordított C# függvény, amely a futtatókörnyezettől elkülönített feldolgozói folyamatban fut. Izolált feldolgozói folyamat szükséges az LTS- és nem LTS-verziókon futó C#-függvények támogatásához .NET és .NET-keretrendszer. Az izolált feldolgozói folyamatfüggvények bővítményei névtereket használnak
Microsoft.Azure.Functions.Worker.Extensions.*
. - Folyamaton belüli modell: Lefordított C# függvény, amely ugyanabban a folyamatban fut, mint a Functions-futtatókörnyezet. A modell egy változatában a Functions C#-szkriptekkel futtatható, amely elsősorban a C#-portál szerkesztéséhez támogatott. A folyamaton belüli függvények bővítményei névtereket használnak
Microsoft.Azure.WebJobs.Extensions.*
.
Fontos
A folyamaton belüli modell támogatása 2026. november 10-én megszűnik. Erősen javasoljuk, hogy az alkalmazásokat az elkülönített feldolgozói modellbe migrálja a teljes támogatás érdekében.
Az alábbi példa egy C# függvényt mutat be, amely lekérdezi az input-queue
üzenetsort, és több üzenetet ír egy kimeneti üzenetsorba minden egyes üzenetsor feldolgozásakor.
[Function(nameof(QueueFunction))]
[QueueOutput("output-queue")]
public string[] Run([QueueTrigger("input-queue")] Album myQueueItem, FunctionContext context)
{
// Use a string array to return more than one message.
string[] messages = {
$"Album name = {myQueueItem.Name}",
$"Album songs = {myQueueItem.Songs.ToString()}"};
_logger.LogInformation("{msg1},{msg2}", messages[0], messages[1]);
// Queue Output messages
return messages;
}
Az alábbi Java-példa egy tárolási üzenetsor-eseményindító függvényt mutat be, amely naplózza az üzenetsorba myqueuename
helyezett aktivált üzenetet.
@FunctionName("queueprocessor")
public void run(
@QueueTrigger(name = "msg",
queueName = "myqueuename",
connection = "myconnvarname") String message,
final ExecutionContext context
) {
context.getLogger().info(message);
}
Az alábbi példa egy üzenetsor-eseményindító TypeScript-függvényét mutatja be. A függvény lekérdezi az myqueue-items
üzenetsort, és naplót ír minden egyes üzenetsorelem feldolgozásakor.
import { app, InvocationContext } from '@azure/functions';
export async function storageQueueTrigger1(queueItem: unknown, context: InvocationContext): Promise<void> {
context.log('Storage queue function processed work item:', queueItem);
context.log('expirationTime =', context.triggerMetadata.expirationTime);
context.log('insertionTime =', context.triggerMetadata.insertionTime);
context.log('nextVisibleTime =', context.triggerMetadata.nextVisibleTime);
context.log('id =', context.triggerMetadata.id);
context.log('popReceipt =', context.triggerMetadata.popReceipt);
context.log('dequeueCount =', context.triggerMetadata.dequeueCount);
}
app.storageQueue('storageQueueTrigger1', {
queueName: 'myqueue-items',
connection: 'MyStorageConnectionAppSetting',
handler: storageQueueTrigger1,
});
A használati szakasz ismerteti queueItem
. Az üzenet metaadatai szakasz az összes többi megjelenített változót ismerteti.
Az alábbi példa egy üzenetsor-trigger JavaScript-függvényét mutatja be. A függvény lekérdezi az myqueue-items
üzenetsort, és naplót ír minden egyes üzenetsorelem feldolgozásakor.
const { app } = require('@azure/functions');
app.storageQueue('storageQueueTrigger1', {
queueName: 'myqueue-items',
connection: 'MyStorageConnectionAppSetting',
handler: (queueItem, context) => {
context.log('Storage queue function processed work item:', queueItem);
context.log('expirationTime =', context.triggerMetadata.expirationTime);
context.log('insertionTime =', context.triggerMetadata.insertionTime);
context.log('nextVisibleTime =', context.triggerMetadata.nextVisibleTime);
context.log('id =', context.triggerMetadata.id);
context.log('popReceipt =', context.triggerMetadata.popReceipt);
context.log('dequeueCount =', context.triggerMetadata.dequeueCount);
},
});
A használati szakasz ismerteti queueItem
. Az üzenet metaadatai szakasz az összes többi megjelenített változót ismerteti.
Az alábbi példa bemutatja, hogyan olvasható be egy függvénynek átadott üzenetsor egy eseményindítón keresztül.
A Storage-üzenetsor-eseményindító function.json fájlban van definiálva, ahol type
a beállítás értéke queueTrigger
.
{
"bindings": [
{
"name": "QueueItem",
"type": "queueTrigger",
"direction": "in",
"queueName": "messages",
"connection": "MyStorageConnectionAppSetting"
}
]
}
A Run.ps1 fájlban lévő kód egy paramétert $QueueItem
deklarál, amely lehetővé teszi az üzenetsor üzenetének olvasását a függvényben.
# Input bindings are passed in via param block.
param([string] $QueueItem, $TriggerMetadata)
# Write out the queue message and metadata to the information log.
Write-Host "PowerShell queue trigger function processed work item: $QueueItem"
Write-Host "Queue item expiration time: $($TriggerMetadata.ExpirationTime)"
Write-Host "Queue item insertion time: $($TriggerMetadata.InsertionTime)"
Write-Host "Queue item next visible time: $($TriggerMetadata.NextVisibleTime)"
Write-Host "ID: $($TriggerMetadata.Id)"
Write-Host "Pop receipt: $($TriggerMetadata.PopReceipt)"
Write-Host "Dequeue count: $($TriggerMetadata.DequeueCount)"
Az alábbi példa bemutatja, hogyan olvasható be egy függvénynek átadott üzenetsor egy eseményindítón keresztül. A példa attól függ, hogy a v1 vagy v2 Python programozási modellt használja-e.
import logging
import azure.functions as func
app = func.FunctionApp()
@app.function_name(name="QueueFunc")
@app.queue_trigger(arg_name="msg", queue_name="inputqueue",
connection="storageAccountConnectionString") # Queue trigger
@app.queue_output(arg_name="outputQueueItem", queue_name="outqueue",
connection="storageAccountConnectionString") # Queue output binding
def test_function(msg: func.QueueMessage,
outputQueueItem: func.Out[str]) -> None:
logging.info('Python queue trigger function processed a queue item: %s',
msg.get_body().decode('utf-8'))
outputQueueItem.set('hello')
Attribútumok
A folyamaton belüli és az izolált feldolgozói folyamat C# kódtárai a QueueTriggerAttribute használatával határozzák meg a függvényt. A C#-szkript ehelyett egy function.json konfigurációs fájlt használ a C#-szkriptelési útmutatóban leírtak szerint.
A C#-osztálytárakban az attribútum konstruktora a monitorozni kívánt üzenetsor nevét veszi fel, ahogyan az alábbi példában látható:
[Function(nameof(QueueFunction))]
[QueueOutput("output-queue")]
public string[] Run([QueueTrigger("input-queue")] Album myQueueItem, FunctionContext context)
Ez a példa azt is bemutatja, hogy a kapcsolati sztring beállítást maga az attribútum állítja be.
Jegyzetek
A QueueTrigger
széljegyzet hozzáférést biztosít a függvényt aktiváló üzenetsorhoz. Az alábbi példa elérhetővé teszi az üzenetsor-üzenetet a függvény számára a message
paraméteren keresztül.
package com.function;
import com.microsoft.azure.functions.annotation.*;
import java.util.Queue;
import com.microsoft.azure.functions.*;
public class QueueTriggerDemo {
@FunctionName("QueueTriggerDemo")
public void run(
@QueueTrigger(name = "message", queueName = "messages", connection = "MyStorageConnectionAppSetting") String message,
final ExecutionContext context
) {
context.getLogger().info("Queue message: " + message);
}
}
Tulajdonság | Leírás |
---|---|
name |
Deklarálja a paraméter nevét a függvény-aláírásban. A függvény aktiválásakor ennek a paraméternek az értéke tartalmazza az üzenetsor-üzenet tartalmát. |
queueName |
Deklarálja az üzenetsor nevét a tárfiókban. |
connection |
A tárfiókra mutat kapcsolati sztring. |
Dekorátorok
Csak a Python v2 programozási modellre vonatkozik.
A dekoratőrrel definiált Python v2-függvények esetében a queue_trigger
dekorátor következő tulajdonságai határozzák meg a Queue Storage-eseményindítót:
Tulajdonság | Leírás |
---|---|
arg_name |
Deklarálja a paraméter nevét a függvény-aláírásban. A függvény aktiválásakor ennek a paraméternek az értéke tartalmazza az üzenetsor-üzenet tartalmát. |
queue_name |
Deklarálja az üzenetsor nevét a tárfiókban. |
connection |
A tárfiókra mutat kapcsolati sztring. |
A function.json használatával definiált Python-függvények esetében lásd a Konfiguráció szakaszt.
Konfiguráció
Csak a Python v1 programozási modellre vonatkozik.
Az alábbi táblázat a metódusnak app.storageQueue()
átadott objektumon options
beállítható tulajdonságokat ismerteti.
Az alábbi táblázat a function.json fájlban és az QueueTrigger
attribútumban beállított kötéskonfigurációs tulajdonságokat ismerteti.
A teljes példákért tekintse meg a Példa szakaszt .
Helyi fejlesztéskor adja hozzá az alkalmazásbeállításokat a gyűjtemény local.settings.json fájljáhozValues
.
Használat
Feljegyzés
A függvények alap64 kódolású sztringet várnak. A kódolási típus bármilyen módosítását (az adatok base64 kódolású sztringként való előkészítéséhez) végre kell hajtani a hívószolgáltatásban.
Az Üzenetsor-eseményindító használata a bővítménycsomag verziójától és a függvényalkalmazásban használt C# módtól függ, amely az alábbi módok egyike lehet:
A C# függvényt lefordított izolált feldolgozói folyamatosztály-kódtár a futtatókörnyezettől elkülönített folyamatban fut.
Válasszon egy verziót a mód és a verzió használati adatainak megtekintéséhez.
Az üzenetsor-eseményindító a következő típusokhoz tud kapcsolódni:
Típus | Leírás |
---|---|
string |
Az üzenet tartalma sztringként. Akkor használja, ha az üzenet egyszerű szöveg. |
byte[] |
Az üzenet bájtja. |
JSON szerializálható típusok | Ha egy üzenetsor JSON-adatokat tartalmaz, a Functions megpróbálja deszerializálni a JSON-adatokat egy egyszerű régi CLR-objektum (POCO) típusba. |
QueueMessage1 | Az üzenet. |
BinaryData1 | Az üzenet bájtja. |
1 Ezeknek a típusoknak a használatához hivatkoznia kell a Microsoft.Azure.Functions.Worker.Extensions.Storage.Queues 5.2.0-s vagy újabb verziójára, valamint az SDK-típuskötések gyakori függőségeire.
A QueueTrigger széljegyzete hozzáférést biztosít a függvényt aktiváló üzenetsorhoz.
Az üzenetsor-üzenet elérése a function.json fájlban lévő kötés paramétere name
által megadott névnek megfelelő karakterlánc-paraméterrel.
Az üzenetsor üzenetének elérése a QueueMessage paraméteren keresztül.
Metaadatok
Az üzenetsor-eseményindító számos metaadat-tulajdonságot biztosít. Ezek a tulajdonságok más kötések kötési kifejezéseinek részeként vagy a kód paramétereiként használhatók azoknak a nyelvmunkásoknak, akik hozzáférést biztosítanak az üzenet metaadataihoz.
Az üzenet metaadatainak tulajdonságai a CloudQueueMessage osztály tagjai.
Az üzenet metaadatainak tulajdonságai a következőből context.triggerMetadata
érhetők el: .
Az üzenet metaadatainak tulajdonságai az átadott $TriggerMetadata
paraméterből érhetők el.
Tulajdonság | Típus | Leírás |
---|---|---|
QueueTrigger |
string |
Üzenetsor hasznos adatai (ha érvényes sztring). Ha az üzenetsor-üzenet hasznos adattartalma egy sztring, QueueTrigger akkor ugyanaz az érték, mint a function.json tulajdonsága által name elnevezett változó. |
DequeueCount |
long |
Az üzenet lekérdezésének száma. |
ExpirationTime |
DateTimeOffset |
Az üzenet lejárati ideje. |
Id |
string |
Üzenetsor-üzenet azonosítója. |
InsertionTime |
DateTimeOffset |
Az üzenet üzenetsorhoz való hozzáadásának időpontja. |
NextVisibleTime |
DateTimeOffset |
Az az idő, amikor az üzenet ezután látható lesz. |
PopReceipt |
string |
Az üzenet pop-nyugtája. |
Az alábbi üzenet metaadat-tulajdonságai az átadott kötési paraméterből érhetők el (msg
a korábbi példákban).
Tulajdonság | Leírás |
---|---|
body |
Üzenetsor hasznos adatai sztringként. |
dequeue_count |
Az üzenet lekérdezésének száma. |
expiration_time |
Az üzenet lejárati ideje. |
id |
Üzenetsor-üzenet azonosítója. |
insertion_time |
Az üzenet üzenetsorhoz való hozzáadásának időpontja. |
time_next_visible |
Az az idő, amikor az üzenet ezután látható lesz. |
pop_receipt |
Az üzenet pop-nyugtája. |
Kapcsolatok
A connection
tulajdonság a környezeti konfigurációra mutató hivatkozás, amely meghatározza, hogy az alkalmazásnak hogyan kell csatlakoznia az Azure Queueshoz. A következőt határozhatja meg:
- Egy kapcsolati sztring tartalmazó alkalmazásbeállítás neve
- Egy megosztott előtag neve több alkalmazásbeállításhoz, valamint identitásalapú kapcsolat definiálása.
Ha a konfigurált érték egy adott beállítás pontos egyezése, a többi beállítás előtagja pedig egyezik, akkor a rendszer a pontos egyezést használja.
Kapcsolati sztring
A kapcsolati sztring beszerzéséhez kövesse a tárfiók hozzáférési kulcsainak kezelése című témakörben ismertetett lépéseket.
Ezt a kapcsolati sztring a kötéskonfiguráció tulajdonsága által connection
megadott értéknek megfelelő névvel rendelkező alkalmazásbeállításban kell tárolni.
Ha az alkalmazásbeállítás neve az "AzureWebJobs" névvel kezdődik, itt csak a név fennmaradó részét adhatja meg. Ha például a "MyStorage" értékre van állítvaconnection
, a Functions-futtatókörnyezet egy "AzureWebJobsMyStorage" nevű alkalmazásbeállítást keres. Ha üresen hagyjaconnection
, a Functions-futtatókörnyezet az alapértelmezett Storage-kapcsolati sztring használja a nevesített AzureWebJobsStorage
alkalmazásbeállításban.
Identitásalapú kapcsolatok
Ha a bővítmény 5.x vagy újabb verzióját használja (a 3.x vagy újabb csomag non-.NET nyelvi veremekhez), ahelyett, hogy titkos kapcsolati sztring használ, az alkalmazás Microsoft Entra-identitást használhat. Identitás használatához olyan beállításokat kell megadnia egy közös előtag alatt, amely leképezi a tulajdonságot az connection
eseményindító és a kötés konfigurációjában.
Ha az "AzureWebJobsStorage" beállítást választjaconnection
, olvassa el a Csatlakozás a gazdagép tárolójához identitással című témakört. Az összes többi kapcsolat esetében a bővítményhez a következő tulajdonságok szükségesek:
Tulajdonság | Környezeti változó sablonja | Leírás | Példaérték |
---|---|---|---|
Üzenetsor-szolgáltatás URI-ja | <CONNECTION_NAME_PREFIX>__queueServiceUri 1 |
Annak az üzenetsor-szolgáltatásnak az adatsíkja, amelyhez csatlakozik, a HTTPS-séma használatával. | <https:// storage_account_name.queue.core.windows.net> |
Az 1 <CONNECTION_NAME_PREFIX>__serviceUri
aliasként használható. Ha mindkét űrlap meg van adva, a rendszer az queueServiceUri
űrlapot használja. Az serviceUri
űrlap nem használható, ha az általános kapcsolatkonfigurációt blobokon, üzenetsorokon és/vagy táblákon kell használni.
Más tulajdonságok is beállíthatók a kapcsolat testreszabásához. Tekintse meg az identitásalapú kapcsolatok gyakori tulajdonságait.
Az Azure Functions szolgáltatásban üzemeltetett identitásalapú kapcsolatok felügyelt identitást használnak. A rendszer alapértelmezés szerint a rendszer által hozzárendelt identitást használja, bár a felhasználó által hozzárendelt identitás megadható a credential
tulajdonságokkal együtt clientID
. Vegye figyelembe, hogy a felhasználó által hozzárendelt identitás erőforrás-azonosítóval való konfigurálása nem támogatott. Ha más környezetekben, például helyi fejlesztésben fut, a rendszer ehelyett a fejlesztői identitást használja, bár ez testre szabható. Lásd: Helyi fejlesztés identitásalapú kapcsolatokkal.
Engedély megadása az identitáshoz
Bármilyen identitást is használ, rendelkeznie kell a kívánt műveletek végrehajtásához szükséges engedélyekkel. A legtöbb Azure-szolgáltatás esetében ez azt jelenti, hogy egy szerepkört kell hozzárendelnie az Azure RBAC-ben beépített vagy egyéni szerepkörökkel, amelyek biztosítják ezeket az engedélyeket.
Fontos
A célszolgáltatás bizonyos engedélyeket közzétehet, amelyek nem minden környezethez szükségesek. Ahol lehetséges, tartsa be a minimális jogosultság elvét, és csak az identitáshoz szükséges jogosultságokat adja meg. Ha például az alkalmazásnak csak adatforrásból kell olvasnia, használjon olyan szerepkört, amely csak olvasási engedéllyel rendelkezik. Nem lenne helyénvaló olyan szerepkört hozzárendelni, amely lehetővé teszi az írást is a szolgáltatáshoz, mivel ez túlzott engedély lenne egy olvasási művelethez. Hasonlóképpen meg szeretné győződni arról, hogy a szerepkör-hozzárendelés csak az elolvasandó erőforrásokra terjed ki.
Létre kell hoznia egy szerepkör-hozzárendelést, amely futásidőben hozzáférést biztosít az üzenetsorhoz. A tulajdonoshoz hasonló felügyeleti szerepkörök nem elegendőek. Az alábbi táblázat olyan beépített szerepköröket mutat be, amelyek a Queue Storage bővítmény normál működésben való használatakor ajánlottak. Előfordulhat, hogy az alkalmazás további engedélyeket igényel az Ön által írt kód alapján.
Kötés típusa | Példa beépített szerepkörökre |
---|---|
Eseményindító | Storage Queue Data Reader, Storage Queue Data Message Processor |
Kimeneti kötés | Storage Queue Data Contributor, Storage Queue Data Message Sender |
Méregüzenetek
Ha egy üzenetsor-eseményindító függvény meghiúsul, az Azure Functions legfeljebb ötször újrapróbálkozza a függvényt egy adott üzenetsor-üzenethez, beleértve az első próbálkozást is. Ha mind az öt kísérlet sikertelen, a függvény-futtatókörnyezet egy üzenetet ad hozzá egy originalqueuename-poison> nevű <üzenetsorhoz. A mérgező üzenetsorból érkező üzenetek feldolgozásához megírhat egy függvényt, ha naplózzák őket, vagy értesítést küldenek arról, hogy manuális beavatkozásra van szükség.
A méregüzenetek manuális kezeléséhez ellenőrizze az üzenetsor-üzenet dequeueCount elemét.
Betekintő zárolás
A betekintő-zárolási minta automatikusan történik az üzenetsor-eseményindítók esetében a tárolási szolgáltatás által biztosított láthatósági mechanikával. Mivel az üzeneteket az aktivált függvény lekérdezi, láthatatlanként lesznek megjelölve. Az üzenetsor által aktivált függvény végrehajtása a következő eredmények egyikével rendelkezhet az üzenetsorban:
- A függvény végrehajtása sikeresen befejeződik, és az üzenet törlődik az üzenetsorból.
- A függvény végrehajtása meghiúsul, és a Functions-gazdagép a host.json fájlban megadott beállítás alapján
visibilityTimeout
frissíti az üzenet láthatóságát. Az alapértelmezett láthatósági időtúllépés nulla, ami azt jelenti, hogy az üzenet azonnal újra megjelenik az üzenetsorban az újrafeldolgozáshoz.visibilityTimeout
A beállítással késleltetheti a feldolgozni nem kívánt üzenetek újrafeldolgozását. Ez az időtúllépési beállítás a függvényalkalmazás összes üzenetsor által aktivált függvényére vonatkozik. - A Függvények gazdagép összeomlik a függvény végrehajtása során. Amikor ez a nem gyakori esemény bekövetkezik, a gazdagép nem tudja alkalmazni a
visibilityTimeout
feldolgozott üzenetre. Ehelyett az üzenet a tárolási szolgáltatás által beállított alapértelmezett 10 perces időtúllépéssel marad. 10 perc elteltével az üzenet újra megjelenik az üzenetsorban az újrafeldolgozáshoz. Ez a szolgáltatás által definiált alapértelmezett időtúllépés nem módosítható.
Lekérdezési algoritmus
Az üzenetsor-eseményindító véletlenszerű exponenciális háttéralgoritmust implementál, amely csökkenti az inaktív üzenetsorok lekérdezésének a tárolási tranzakciók költségeire gyakorolt hatását.
Az algoritmus a következő logikát használja:
- Amikor egy üzenet található, a futtatókörnyezet 100 ezredmásodpercet vár, majd egy másik üzenetet keres.
- Ha nem található üzenet, körülbelül 200 ezredmásodpercet vár, mielőtt újra próbálkozna.
- Az üzenetsor-üzenet későbbi sikertelen lekérési kísérletei után a várakozási idő mindaddig nő, amíg el nem éri a maximális várakozási időt, amely alapértelmezés szerint egy percre esik.
- A maximális várakozási idő a
maxPollingInterval
host.json fájlban lévő tulajdonságon keresztül konfigurálható.
A helyi fejlesztés során a lekérdezési időköz maximális értéke két másodperc.
Feljegyzés
A használatalapú csomagban lévő függvényalkalmazások üzemeltetésének számlázásával kapcsolatban nem kell fizetnie a futásidejű lekérdezéssel töltött időért.
Egyidejűség
Ha több üzenetsor-üzenet vár, az üzenetsor-eseményindító lekéri az üzenetek kötegét, és egyidejűleg meghívja a függvénypéldányokat a feldolgozásukhoz. Alapértelmezés szerint a köteg mérete 16. Amikor a feldolgozott szám 8-ra csökken, a futtatókörnyezet újabb köteget kap, és megkezdi az üzenetek feldolgozását. Így az egyidejű üzenetek maximális száma függvényenként egy virtuális gépen (virtuális gépen) 24. Ez a korlát külön vonatkozik az egyes virtuális gépek üzenetsor által aktivált függvényére. Ha a függvényalkalmazás több virtuális gépre skálázódik, minden virtuális gép megvárja az eseményindítókat, és megpróbálja futtatni a függvényeket. Ha például egy függvényalkalmazás 3 virtuális gépre skálázódik, az egy üzenetsor által aktivált függvény egyidejű példányainak alapértelmezett maximális száma 72.
A köteg mérete és az új köteg beszerzésének küszöbértéke konfigurálható a host.json fájlban. Ha szeretné minimalizálni a párhuzamos végrehajtást az üzenetsor által aktivált függvények esetében egy függvényalkalmazásban, beállíthatja a köteg méretét 1-esre. Ez a beállítás csak addig szünteti meg az egyidejűséget, amíg a függvényalkalmazás egyetlen virtuális gépen (virtuális gépen) fut.
Az üzenetsor-eseményindító automatikusan megakadályozza, hogy egy függvény egyszerre többször is feldolgozza az üzenetsor-üzeneteket.
host.json tulajdonságok
A host.json fájl az üzenetsor-eseményindító viselkedését vezérlő beállításokat tartalmaz. Az elérhető beállításokkal kapcsolatos részletekért tekintse meg a host.json beállítások szakaszát.