esemény
AI-alkalmazások és -ügynökök létrehozása
márc. 17. 21 - márc. 21. 10
Csatlakozzon a meetup sorozathoz, hogy valós használati esetek alapján, skálázható AI-megoldásokat hozzon létre más fejlesztőkkel és szakértőkkel.
RegisztrációEzt a böngészőt már nem támogatjuk.
Frissítsen a Microsoft Edge-re, hogy kihasználhassa a legújabb funkciókat, a biztonsági frissítéseket és a technikai támogatást.
Az Azure Functions triggereken és kötéseken keresztül integrálható az Azure Service Bus szolgáltatással. A Service Bus használatával integrálva olyan függvényeket hozhat létre, amelyek üzenetsor- vagy témakörüzeneteket küldenek és reagálnak rá.
Művelet | Típus |
---|---|
Függvény futtatása Service Bus-üzenetsor vagy témakörüzenet létrehozásakor | Eseményindító |
Azure Service Bus-üzenetek küldése | Kimeneti kötés |
A telepített NuGet-csomag a függvényalkalmazásban használt C# módtól függ:
A függvények izolált C# feldolgozói folyamatban futnak. További információ: Útmutató a C# Azure Functions izolált feldolgozói folyamatban való futtatásához.
Adja hozzá a bővítményt a nuGet-csomagot telepítő projekthez.
A bővítmény funkciói a bővítmény verziójától függően változnak:
Ez a verzió lehetővé teszi, hogy titkos kulcs helyett identitással csatlakozzon. A függvényalkalmazások felügyelt identitásokkal való konfigurálásáról szóló oktatóanyagot az identitásalapú kapcsolatokkal rendelkező függvényalkalmazások létrehozásáról szóló oktatóanyagban tekintheti meg.
Ez a verzió lehetővé teszi az Azure.Messaging.ServiceBus-ból származó típusokhoz való kötést.
Ez a verzió támogatja az eseményindítók és kötések konfigurálását a .NET Aspire integráción keresztül.
Adja hozzá a bővítményt a projekthez az 5.x-es verziójú NuGet-csomag telepítésével.
A Service Bus-kötés egy bővítménycsomag része, amely a host.json projektfájlban van megadva. Előfordulhat, hogy módosítania kell ezt a csomagot a kötés verziójának módosításához, vagy ha a csomagok még nincsenek telepítve. További információkért tekintse meg a bővítménycsomagot.
Ez a verzió lehetővé teszi, hogy titkos kulcs helyett identitással csatlakozzon. A függvényalkalmazások felügyelt identitásokkal való konfigurálásáról szóló oktatóanyagot az identitásalapú kapcsolatokkal rendelkező függvényalkalmazások létrehozásáról szóló oktatóanyagban tekintheti meg.
A bővítmény ezen verzióját a 3. verziójú bővítménycsomagból is hozzáadhatja, ha hozzáadja vagy lecseréli a következő kódot a host.json
fájlban:
{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle",
"version": "[3.3.0, 4.0.0)"
}
}
További információ: Bővítmények frissítése.
A .NET-hez támogatott kötéstípusok a bővítményverziótól és a C# végrehajtási módtól is függenek, ami az alábbiak 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 ki egy verziót a mód és a verzió kötéstípusának részleteinek megtekintéséhez.
Az izolált feldolgozó folyamat az alábbi táblázatoknak megfelelően támogatja a paramétertípusokat.
Service Bus-eseményindító
Ha azt szeretné, hogy a függvény egyetlen üzenetet dolgoz fel, a Service Bus-eseményindító a következő típusokhoz kapcsolódhat:
Típus | Leírás |
---|---|
string |
Az üzenet sztringként. Akkor használja, ha az üzenet egyszerű szöveg. |
byte[] |
Az üzenet bájtja. |
JSON szerializálható típusok | Ha egy esemény JSON-adatokat tartalmaz, a Functions megpróbálja deszerializálni a JSON-adatokat egy egyszerű régi CLR-objektum (POCO) típusba. |
ServiceBusReceivedMessage1 | Az üzenetobjektum. Ha a kötéshez ServiceBusReceivedMessage , a ServiceBusMessageActions1,2 típusú paramétert is megadhat az üzenetegyeztetési műveletek végrehajtásához. |
Ha azt szeretné, hogy a függvény feldolgozza az üzenetek kötegét, a Service Bus-eseményindító a következő típusokhoz tud csatlakozni:
Típus | Leírás |
---|---|
T[] hol T található az egyetlen üzenettípus |
A kötegből származó események tömbje. Minden bejegyzés egy eseményt jelöl. Ha a kötéshez ServiceBusReceivedMessage[] , a ServiceBusMessageActions1,2 típusú paramétert is megadhat az üzenetegyeztetési műveletek végrehajtásához. |
1 Ezeknek a típusoknak a használatához hivatkoznia kell a Microsoft.Azure.Functions.Worker.Extensions.ServiceBus 5.14.1 vagy újabb verziójára, valamint az SDK-típuskötések gyakori függőségeire.
2 Használata esetén állítsa azAutoCompleteMessages
eseményindító attribútum tulajdonságát a következőrefalse
ServiceBusMessageActions
: . Ez megakadályozza, hogy a futtatókörnyezet megkíséreljen üzeneteket végrehajtani egy sikeres függvényhívás után.
Service Bus kimeneti kötés
Ha azt szeretné, hogy a függvény egyetlen üzenetet írjon, a Service Bus kimeneti kötése a következő típusokhoz kapcsolódhat:
Típus | Leírás |
---|---|
string |
Az üzenet sztringként. Akkor használja, ha az üzenet egyszerű szöveg. |
byte[] |
Az üzenet bájtja. |
JSON szerializálható típusok | Az üzenetet jelképező objektum. A Functions egy egyszerű régi CLR-objektum (POCO) típust próbál JSON-adatokká szerializálni. |
Ha azt szeretné, hogy a függvény több üzenetet írjon, a Service Bus kimeneti kötése a következő típusokhoz kapcsolódhat:
Típus | Leírás |
---|---|
T[] hol T található az egyetlen üzenettípus |
Több üzenetet tartalmazó tömb. Minden bejegyzés egy üzenetet jelöl. |
Egyéb kimeneti forgatókönyvek esetén hozzon létre és használjon közvetlenül egy ServiceBusClientet más típusokkal az Azure.Messaging.ServiceBus szolgáltatásból. Tekintse meg az Azure-ügyfelek regisztrálását a függőséginjektálás használatával egy ügyféltípus Azure SDK-ból való létrehozásához.
Ez a szakasz a kötéshez elérhető konfigurációs beállításokat ismerteti, amelyek a futtatókörnyezettől és a bővítmény verziójától függnek.
{
"version": "2.0",
"extensions": {
"serviceBus": {
"clientRetryOptions":{
"mode": "exponential",
"tryTimeout": "00:01:00",
"delay": "00:00:00.80",
"maxDelay": "00:01:00",
"maxRetries": 3
},
"prefetchCount": 0,
"transportType": "amqpWebSockets",
"webProxy": "https://proxyserver:8080",
"autoCompleteMessages": true,
"maxAutoLockRenewalDuration": "00:05:00",
"maxConcurrentCalls": 16,
"maxConcurrentSessions": 8,
"maxMessageBatchSize": 1000,
"minMessageBatchSize": 1,
"maxBatchWaitTime": "00:00:30",
"sessionIdleTimeout": "00:01:00",
"enableCrossEntityTransactions": false
}
}
}
A clientRetryOptions
beállítások csak a Service Bus szolgáltatással folytatott interakciókra vonatkoznak. Nem befolyásolják a függvényvégrehajtások újrapróbálkozását. További információ: Újrapróbálkozás.
Tulajdonság | Alapértelmezett | Leírás |
---|---|---|
mód | Exponential |
Az újrapróbálkozási késések kiszámításának módszere. Az alapértelmezett exponenciális mód késleltetéssel próbálja meg újrapróbálkozásokat egy olyan háttérstratégia alapján, amelyben minden kísérlet növeli a várakozási időtartamot az újrapróbálkozás előtt. A Fixed mód újrapróbálkozásait rögzített időközönként kísérli meg, és minden késleltetésnek konzisztens időtartamúnak kell lennie. |
tryTimeout | 00:01:00 |
A művelet próbálkozásonkénti várakozásának maximális időtartama. |
késés | 00:00:00.80 |
Az újrapróbálkozási kísérletek közötti alkalmazás késleltetési vagy visszalépési tényezője. |
maxDelay | 00:01:00 |
Az újrapróbálkozási kísérletek közötti maximális késleltetés |
maxRetries | 3 |
Az újrapróbálkozások maximális száma, mielőtt a társított művelet sikertelennek tekintené. |
prefetchCount | 0 |
Lekéri vagy beállítja az üzenet fogadója által egyidejűleg kérhető üzenetek számát. |
transportType | amqpTcp | A Service Bus szolgáltatással való kommunikációhoz használt protokoll és átvitel. Elérhető lehetőségek: amqpTcp , amqpWebSockets |
webProxy | n.a. | A Service Bus webes szoftvercsatornákon keresztüli kommunikációjához használható proxy. Az átvitelhez amqpTcp nem használható proxy. |
autoCompleteMessages | true |
Meghatározza, hogy a függvény sikeres végrehajtása után automatikusan befejezze-e az üzeneteket. |
maxAutoLockRenewalDuration | 00:05:00 |
Az az időtartam, amelyen belül az üzenet zárolása automatikusan megújul. Ez a beállítás csak azokra a függvényekre vonatkozik, amelyek egyszerre egyetlen üzenetet kapnak. |
maxConcurrentCalls | 16 |
A visszahívásra irányuló egyidejű hívások maximális száma, amelyet skálázott példányonként kell kezdeményezni. Alapértelmezés szerint a Functions-futtatókörnyezet egyszerre több üzenetet is feldolgoz. Ezt a beállítást csak akkor használja a rendszer, ha az isSessionsEnabled eseményindító tulajdonsága vagy attribútuma a következőre false van állítva: . Ez a beállítás csak azokra a függvényekre vonatkozik, amelyek egyszerre egyetlen üzenetet kapnak. |
maxConcurrentSessions | 8 |
Az egy skálázott példányonként egyidejűleg kezelhető munkamenetek maximális száma. Ezt a beállítást csak akkor használja a rendszer, ha az isSessionsEnabled eseményindító tulajdonsága vagy attribútuma a következőre true van állítva: . Ez a beállítás csak azokra a függvényekre vonatkozik, amelyek egyszerre egyetlen üzenetet kapnak. |
maxMessageBatchSize | 1000 |
Az egyes függvényhívások számára továbbított üzenetek maximális száma. Ez a beállítás csak azokra a függvényekre vonatkozik, amelyek üzenetek kötegét fogadják. |
minMessageBatchSize1 | 1 |
A kötegben kívánt üzenetek minimális száma. A minimum csak akkor érvényes, ha a függvény több üzenetet fogad, és kisebbnek kell lennie.maxMessageBatchSize A minimális méret nem szigorúan garantált. Egy részleges köteg akkor lesz elküldve, ha a teljes köteg nem készíthető el a maxBatchWaitTime leteltéig. |
maxBatchWaitTime1 | 00:00:30 |
Az a maximális időköz, amelyet az eseményindítónak várnia kell egy köteg kitöltésére a függvény meghívása előtt. A várakozási idő csak akkor számítható ki, ha minMessageBatchSize nagyobb, mint 1, és máskülönben figyelmen kívül hagyja. Ha a várakozási idő eltelte előtt kevesebb minMessageBatchSize üzenet érhető el, a függvény részleges köteggel lesz meghívva. A leghosszabb engedélyezett várakozási idő az entitásüzenet zárolási időtartamának 50%-a, ami azt jelenti, hogy a maximálisan engedélyezett időtartam 2 perc és 30 másodperc. Ellenkező esetben zárolási kivételeket kaphat. MEGJEGYZÉS: Ez az intervallum nem garantálja a függvény meghívásának pontos időzítését. Az időzítő pontossága miatt kis hibahatár van érvényben. |
sessionIdleTimeout | n.a. | Az aktuális aktív munkamenetre vonatkozó üzenet fogadásának maximális időtartama. Az idő eltelte után a munkamenet bezárul, és a függvény megpróbál egy másik munkamenetet feldolgozni. |
enableCrossEntityTransactions | false |
Engedélyezheti-e a Service Bus-névtér több entitását felölelő tranzakciókat. |
1 A csomag 5.10.0-s vagy újabb verziójának használata minMessageBatchSize
és maxBatchWaitTime
megköveteléseMicrosoft.Azure.WebJobs.Extensions.ServiceBus
.
esemény
AI-alkalmazások és -ügynökök létrehozása
márc. 17. 21 - márc. 21. 10
Csatlakozzon a meetup sorozathoz, hogy valós használati esetek alapján, skálázható AI-megoldásokat hozzon létre más fejlesztőkkel és szakértőkkel.
Regisztráció