Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Állapotalapú függvények írása kiszolgáló nélküli környezetben a Durable Functions használatával, amely a Azure Functions egyik funkciója. Olyan forgatókönyvek, amelyekben a Durable Functions hasznos lehet: mikroszolgáltatások és munkafolyamatok vezénylése, állapotalapú minták, például ki-ki-/ventilátorozás és hosszú ideig futó feladatok.
A Durable Task Scheduler a Durable Functions háttérrendszereként is használható a vezénylés és az entitás futtatókörnyezeti állapotának tárolásához.
Ebben a gyors kezdő útmutatóban a következőket teheti meg:
- Konfiguráljon egy meglévő Durable Functions-alkalmazást a Durable Task Scheduler használatára.
- Állítsa be a Durable Task Emulatort a helyi fejlesztéshez.
- Helyezze üzembe az alkalmazást az Azure-ban az App Service-csomagban a Visual Studio Code használatával.
- Az alkalmazás és a feladatközpont állapotának monitorozása a Durable Task Scheduler irányítópultján.
A C# esetében ez a rövid útmutató az .NET izolált feldolgozómodellt használja.
Előfeltételek
- Egy meglévő Azure Functions projekt a helyi számítógépen:
- Docker telepítve a Durable Task Scheduler emulátor futtatásához.
- Azurite telepítve.
- EGY HTTP-teszteszköz , amely biztonságossá teszi az adatokat.
A Durable Task Scheduler csomag hozzáadása
Telepítse a Microsoft.Azure.Functions.Worker.Extensions.DurableTask.AzureManaged csomag legújabb verzióját a dotnet add package parancs használatával:
dotnet add package Microsoft.Azure.Functions.Worker.Extensions.DurableTask.AzureManaged --prerelease
Megjegyzés:
A Durable Task Scheduler bővítményhez a Microsoft.Azure.Functions.Worker.Extensions.DurableTask verzió 1.2.2 vagy újabb szükséges.
A host.json-ban frissítse a extensionBundle tulajdonságot, hogy a 4.32.0-s vagy újabb verziót használja, amely tartalmazza a Durable Task Scheduler támogatását.
{
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle",
"version": "[4.32.0, 5.0.0)"
}
}
Host.json frissítése
Frissítse a host.json-t az alábbiak szerint, hogy a Durable Task Scheduler-t háttérszerverként használja.
{
"extensions": {
"durableTask": {
"hubName": "%TASKHUB_NAME%",
"storageProvider": {
"type": "azureManaged",
"connectionStringName": "DURABLE_TASK_SCHEDULER_CONNECTION_STRING"
}
}
}
}
local.settings.json konfigurálása
Kapcsolati információk hozzáadása a helyi fejlesztéshez:
{
"IsEncrypted": false,
"Values": {
"FUNCTIONS_WORKER_RUNTIME": "<DEPENDENT ON YOUR PROGRAMMING LANGUAGE>",
"AzureWebJobsStorage": "UseDevelopmentStorage=true",
"DURABLE_TASK_SCHEDULER_CONNECTION_STRING": "Endpoint=http://localhost:8080;Authentication=None",
"TASKHUB_NAME": "default"
}
}
A Durable Task Emulator beállítása
Töltse le az emulátort tartalmazó Docker-képfájlt.
docker pull mcr.microsoft.com/dts/dts-emulator:latestFuttassa az emulátort.
docker run -d -p 8080:8080 -p 8082:8082 mcr.microsoft.com/dts/dts-emulator:latestAz alábbi kimenet azt jelzi, hogy az emulátor sikeresen elindult.
Jegyezze fel a Docker asztali verziójában közzétett portokat. Az ütemező több portot tesz elérhetővé különböző célokra:
-
8080: gRPC-végpont, amely lehetővé teszi, hogy egy alkalmazás csatlakozzon az ütemezőhöz -
8082: A Durable Task Scheduler irányítópult végpontja
-
Megjegyzés:
A Durable Task Scheduler emulator a vezénylési adatokat a memóriában tárolja, ami azt jelenti, hogy az összes adat elveszik, amikor leáll.
Helyi tesztelés
Nyissa meg az alkalmazás gyökérkönyvtárát, és indítsa el az Azurite-t.
azurite startIndítsa el az alkalmazást.
func startLátnia kell az alkalmazás függvényeinek listáját.
A vezénylési példány elindításához küldjön egy HTTP-kérést az URL-végpontra a választott HTTP-teszteszköz használatával.
Másolja ki a böngésző címsorában lévő
statusQueryGetUriURL-címet, és illessze be. Látnia kellene az állapotot az orchestration instance-on.{ "name": "DurableFunctionsOrchestration", "instanceId": "<instanceID>", "runtimeStatus": "Completed", "input": null, "customStatus": null, "output": [ "Hello Tokyo!", "Hello Seattle!", "Hello London!" ], "createdTime": "2025-02-21T21:09:59Z", "lastUpdatedTime": "2025-02-21T21:10:00Z" }A vezénylési példány további részleteinek megtekintéséhez nyissa meg http://localhost:8082/ a Durable Task Scheduler irányítópultot.
Kattintson az alapértelmezett tevékenységközpontra az irányítópult megtekintéséhez.
Problémákat tapasztal a tesztelés során? Tekintse meg a hibaelhárítási útmutatót.
Az alkalmazás futtatása az Azure-ban
Szükséges erőforrások létrehozása
Hozz létre egy tartós feladatütemező példányt és egy Azure Functions alkalmazást az Azure-on a funkcióalkalmazás-integrációs létrehozási folyamat követésével. Ez a felület automatikusan beállítja az identitásalapú hozzáférést, és konfigurálja az alkalmazáshoz szükséges környezeti változókat az ütemező eléréséhez.
Lépjen a Function app létrehozási felületre.
A Függvényalkalmazás létrehozása (Rugalmas használat) panelen töltse ki az Alapok lapon található információkat.
szakterület Leírás Subscription Válassza ki Azure-előfizetését. Erőforráscsoport Válasszon ki egy meglévő erőforráscsoportot, vagy kattintson az Új létrehozása gombra egy új létrehozásához. Funkcióalkalmazás neve Hozzon létre egy egyedi nevet a függvényalkalmazásnak. Kódot vagy tárolórendszerképet szeretne üzembe helyezni? Hagyja bejelölve a Kód lehetőséget. Régió Válasszon egyet a támogatott régiók közül. Futtatókörnyezeti verem Válassza ki a quickstart során használt futtatókörnyezetet. Verzió Válassza ki a futtatókörnyezeti veremváltozatát. Példány mérete Válasszon ki egy példányméretet, vagy használja az alapértelmezett kijelölést. További információ a példányméretekről. Zónaredundancia Hagyja meg alapértelmezett letiltott beállításként. Válassza a Durable Functions lapot.
Válassza az Azure által kezelt Durable Task Scheduler szolgáltatást a Durable Functions háttérszolgáltatójaként.
Ütemező erőforrás létrehozása. Ez a művelet automatikusan létrehoz egy feladatközpontot.
szakterület Leírás Tároló háttértár Válassza az Azure Managed Durable Task Scheduler lehetőséget. Régió Győződjön meg arról, hogy az ütemező és a függvényalkalmazás régiói megegyeznek. Tartós feladatütemező Használja a felajánlott ütemezőnevet, vagy kattintson az Új létrehozása gombra egy egyéni név létrehozásához. Terv Válassza ki a projektnek leginkább megfelelő tarifacsomagot . Tekintse meg az orchestration keretrendszer kiválasztására vonatkozó útmutatót annak megállapításához, hogy melyik csomag felel meg a legjobban az éles használathoz. Kapacitásegységek Csak akkor alkalmazható, ha a "Dedikált" díjszabási csomag van kiválasztva. Legfeljebb 3 kapacitásegységet választhat ki. Kattintson a Véleményezés + létrehozás gombra az erőforrás-létrehozás áttekintéséhez.
A rendszer automatikusan létrehoz egy felhasználó által hozzárendelt felügyelt identitást a szükséges szerepköralapú hozzáférés-vezérlési (RBAC) engedéllyel, és hozzáadja a függvényalkalmazáshoz. Az összegző nézetben a felügyelt identitás erőforrásával kapcsolatos információk találhatók, például:
A hozzá rendelt szerepkör (Tartós Feladat Adatközlő)
A feladatközpont szintjére hatókörű hozzárendelés
Kattintson a Létrehozás gombra, ha az ellenőrzés sikeres.
Az erőforrás üzembe helyezése körülbelül 15–20 percet vehet igénybe. Ha ez befejeződött, üzembe helyezheti az alkalmazást az Azure-ban.
A függvényalkalmazás üzembe helyezése az Azure-ban
Fontos
Egy meglévő függvényalkalmazás üzembe helyezése az Azure-ban mindig felülírja az alkalmazás tartalmát.
A parancskatalógusban írja be, majd válassza az Azure Functions: Üzembe helyezés függvényalkalmazásba lehetőséget.
Válassza ki az imént létrehozott függvényalkalmazást. Amikor a rendszer kéri a korábbi üzembe helyezések felülírását, válassza a Üzembe helyezés lehetőséget a függvénykód új függvényalkalmazás-erőforrásba való telepítéséhez.
Ha az üzembe helyezés befejeződött, válassza a Megtekintő kimenet lehetőséget a létrehozási és üzembe helyezési eredmények megtekintéséhez, beleértve a létrehozott Azure erőforrásokat is. Ha nem jelenik meg az értesítés, a jobb alsó sarokban lévő harang ikont választva ismét láthatja.
Alkalmazások a Functions Premium-csomagban
Ha az alkalmazás a Functions Premium csomagban fut, az üzembe helyezés után kapcsolja be a futtatókörnyezeti méretezés monitorozási beállítását, hogy az alkalmazás automatikusan skálázható legyen a terhelés alapján:
az resource update -g <resource_group> -n <function_app_name>/config/web --set properties.functionsRuntimeScaleMonitoringEnabled=1 --resource-type Microsoft.Web/sites
Tesztelje a függvényalkalmazását
Futtassa a következő parancsot a függvény URL-címének lekéréséhez:
az functionapp function list --resource-group <RESOURCE_GROUP_NAME> --name <FUNCTION_APP_NAME> --query '[].{Function:name, URL:invokeUrlTemplate}' --output json
Vezénylés állapotának ellenőrzése
Ellenőrizze az orkestrációs példány állapotát és a tevékenység részleteit a Durable Task Scheduler vezérlőpultján. Az irányítópult eléréséhez be kell jelentkeznie.
Megjegyzés:
Az alábbi utasítások egy adott tevékenységközpontra hatókörrel rendelkező szerepkör-hozzárendelést mutatnak be. Ha egy ütemező összes tevékenységközpontjának hozzáférésére van szüksége, végezze el a feladatot az ütemező szintjén.
Keresse meg a Durable Task Scheduler erőforrást a portálon.
Kattintson a tevékenységközpont nevére.
A bal oldali menüben válassza a Hozzáférés-vezérlés (IAM) lehetőséget.
Szerepkör-hozzárendelés hozzáadásához kattintson a Hozzáadás gombra.
Keresse meg és válassza ki a Durable Task Data Közreműködőt. Kattintson a Tovább feliratra.
A Tagok lapon a Hozzáférés hozzárendelése lapon válassza a Felhasználó, csoport vagy szolgáltatásnév lehetőséget.
Tagok esetén kattintson a + Tagok kijelölése elemre.
A Tagok kiválasztása panelen keresse meg a nevét vagy az e-mail-címét:
Válassza ki az e-mailt, és kattintson a Kiválasztás gombra.
Kattintson a Véleményezés + hozzárendelés gombra a szerepkör hozzárendelésének befejezéséhez.
Miután hozzárendelte a szerepkört, kattintson az Áttekintés gombra a tevékenységközpont-erőforrás bal oldali menüjében, és keresse meg a felső Essentials szakaszban található irányítópult URL-címét.
Erőforrások tisztítása
Ha már nincs szüksége a gyorsútmutató végrehajtásához létrehozott erőforrásokra, az Azure-előfizetéshez kapcsolódó költségek elkerülése érdekében törölje az erőforráscsoportot és az összes kapcsolódó erőforrást.
Következő lépések
- További információ a Durable Task Scheduler irányítópultról.
- A Durable Task Scheduler használata során felmerülő hibák elhárítása.