Share via


Az első tartós függvény létrehozása a PowerShellben

A Durable Functions az Azure Functions bővítménye, amellyel állapotalapú függvényeket írhat kiszolgáló nélküli környezetben. A bővítmény automatikusan kezeli az állapotokat, az ellenőrzőpontokat és az újraindításokat.

Ebben a cikkben megtudhatja, hogyan használhatja a Visual Studio Code Azure Functions bővítményt egy "hello world" tartós függvény helyi létrehozására és tesztelésére. Ez a függvény összehangolja és összekapcsolja a más függvényekhez intézett hívásokat. Ezután közzéteheti a függvénykódot az Azure-ban.

Tartós függvény futtatása az Azure-ban

Előfeltételek

Az oktatóanyag elvégzéséhez:

Ha nem rendelkezik Azure-előfizetéssel, első lépésként hozzon létre egy ingyenes Azure-fiókot.

Helyi projekt létrehozása

Ebben a szakaszban a Visual Studio Code használatával hoz létre egy helyi Azure Functions-projektet.

  1. A Visual Studio Code-ban nyomja le az F1 (vagy Ctrl/Cmd+Shift+P) billentyűkombinációt a parancskatalógus megnyitásához. A parancskatalógusban keresse meg és válassza ki a kívánt parancsot Azure Functions: Create New Project....

    Függvény létrehozása

  2. Válasszon egy üres mappahelyet a projekthez, és válassza a Kiválasztás lehetőséget.

  3. Az utasításokat követve adja meg a következő információkat:

    Adatkérés Érték Leírás
    Nyelv kiválasztása a függvényalkalmazás-projekthez PowerShell Hozzon létre egy helyi PowerShell Functions-projektet.
    Verzió kiválasztása Azure Functions v4 Ez a beállítás csak akkor jelenik meg, ha a Core Tools még nincs telepítve. Ebben az esetben a Core Tools az alkalmazás első futtatásakor lesz telepítve.
    Sablon kiválasztása a projekt első függvényéhez Kihagyás
    Válassza ki, hogyan szeretné megnyitni a projektet Megnyitás az aktuális ablakban Újra megnyitja a VS Code-ot a kiválasztott mappában.

A Visual Studio Code szükség esetén telepíti az Azure Functions Core Toolst. Emellett létrehoz egy függvényalkalmazás-projektet egy mappában. Ez a projekt tartalmazza a host.json és local.settings.json konfigurációs fájlokat.

A gyökérmappában is létrejön egy package.json fájl.

Függvényalkalmazás konfigurálása a PowerShell 7 használatára

Nyissa meg a local.settings.json fájlt, és győződjön meg arról, hogy egy elnevezett FUNCTIONS_WORKER_RUNTIME_VERSION beállítás be van állítva ~7. Ha hiányzik, vagy másik értékre van beállítva, frissítse a fájl tartalmát.

{
  "IsEncrypted": false,
  "Values": {
    "AzureWebJobsStorage": "",
    "FUNCTIONS_WORKER_RUNTIME": "powershell",
    "FUNCTIONS_WORKER_RUNTIME_VERSION" : "~7"
  }
}

A függvények létrehozása

A legalapvetőbb Durable Functions-alkalmazás három függvényt tartalmaz:

  • Orchestrator függvény – olyan munkafolyamatot ír le, amely más függvényeket vezényl.
  • Tevékenységfüggvény – a vezénylő függvény hívja meg, elvégzi a munkát, és opcionálisan egy értéket ad vissza.
  • Ügyfélfüggvény – egy reguláris Azure-függvény, amely elindít egy vezénylő függvényt. Ez a példa EGY HTTP által aktivált függvényt használ.

Orchestrator függvény

Sablon használatával hozza létre a tartós függvénykódot a projektben.

  1. A parancskatalógusban keresse meg és válassza ki a kívánt parancsot Azure Functions: Create Function....

  2. Az utasításokat követve adja meg a következő információkat:

    Adatkérés Érték Leírás
    Sablon kiválasztása a függvényhez Durable Functions vezénylő Durable Functions-vezénylés létrehozása
    Függvénynév megadása HelloOrchestrator A tartós függvény neve

Felvett egy vezénylőt a tevékenységfüggvények koordinálásához. Nyissa meg a HelloOrchestrator/run.ps1 fájlt a vezénylő függvény megtekintéséhez. A parancsmag minden hívása Invoke-ActivityFunction meghív egy tevékenységfüggvényt.Hello

Ezután hozzáadja a hivatkozott tevékenységfüggvényt Hello .

Tevékenységfüggvény

  1. A parancskatalógusban keresse meg és válassza ki a kívánt parancsot Azure Functions: Create Function....

  2. Az utasításokat követve adja meg a következő információkat:

    Adatkérés Érték Leírás
    Sablon kiválasztása a függvényhez Durable Functions-tevékenység Tevékenységfüggvény létrehozása
    Függvénynév megadása Üdvözöljük A tevékenységfüggvény neve

Hozzáadta a Hello vezénylő által meghívott tevékenységfüggvényt. Nyissa meg a Hello/run.ps1 fájlt annak megtekintéséhez, hogy egy nevet ad meg bemenetként, és egy üdvözlést ad vissza. A tevékenységfüggvények olyan műveleteket hajtanak végre, mint például egy adatbázis-hívás vagy egy számítás végrehajtása.

Végül hozzáad egy HTTP-aktivált függvényt, amely elindítja a vezénylést.

Ügyfélfüggvény (HTTP-kezdő)

  1. A parancskatalógusban keresse meg és válassza ki a kívánt parancsot Azure Functions: Create Function....

  2. Az utasításokat követve adja meg a következő információkat:

    Adatkérés Érték Leírás
    Sablon kiválasztása a függvényhez Durable Functions HTTP starter HTTP kezdőfüggvény létrehozása
    Függvénynév megadása HttpStart A tevékenységfüggvény neve
    Engedélyszint Névtelen Demó céljából engedélyezze a függvény hitelesítés nélküli meghívását

Hozzáadott egy HTTP-aktivált függvényt, amely elindít egy vezénylést. Nyissa meg a HttpStart/run.ps1 fájlt annak megtekintéséhez, hogy a Start-NewOrchestration parancsmag használatával indít el egy új vezénylést. Ezután a New-OrchestrationCheckStatusResponse parancsmaggal egy URL-eket tartalmazó HTTP-választ ad vissza, amely az új vezénylés figyelésére és kezelésére használható.

Most már rendelkezik egy Durable Functions-alkalmazással, amely helyileg futtatható és üzembe helyezhető az Azure-ban.

Feljegyzés

A DF PowerShell következő verziója már előzetes verzióban érhető el, és letölthető a PowerShell-galéria. Ismerje meg, és hogyan próbálja ki az önálló PowerShell SDK útmutatójában. Az útmutató telepítési szakaszát követve a rövid útmutatóval kompatibilis utasításokat talál az engedélyezéséről.

A függvény helyi tesztelése

Az Azure Functions Core Tools lehetővé teszi Azure Functions-projektek helyi fejlesztői számítógépen való futtatását. A rendszer arra kéri, hogy telepítse ezeket az eszközöket, amikor először indít el függvényalkalmazást a Visual Studio Code-ból.

  1. A függvény teszteléséhez állítson be egy töréspontot a Hello tevékenységfüggvény kódjában (Hello/run.ps1). Nyomja le az F5 billentyűt, vagy válasszon Debug: Start Debugging a parancskatalógusból a függvényalkalmazás-projekt elindításához. A Core Tools kimenete a Terminal (Terminál) panelen jelenik meg.

    Feljegyzés

    A hibakereséssel kapcsolatos további információkért tekintse meg a Durable Functions Diagnosticst .

  2. A Durable Functions használatához Egy Azure Storage-fiók futtatására van szükség. Amikor a VS Code kéri, hogy válasszon ki egy tárfiókot, válassza a Tárfiók kiválasztása lehetőséget.

    Storage-fiók létrehozása

  3. Az utasításokat követve adja meg az alábbi információkat egy új tárfiók azure-beli létrehozásához.

    Adatkérés Érték Leírás
    Előfizetés kiválasztása az előfizetés neve Válassza ki az Azure-előfizetését
    Tárfiók kiválasztása Új tárfiók létrehozása
    Adja meg az új tárfiók nevét egyedi név A létrehozandó tárfiók neve
    Erőforráscsoport kiválasztása egyedi név A létrehozandó erőforráscsoport neve
    Hely kiválasztása Régió Válasszon egy Önhöz közeli régiót
  4. A Terminal (Terminál) panelen másolja a vágólapra a HTTP által indított függvény URL-végpontját.

    Az Azure helyi kimenete

  5. A böngésző vagy egy olyan eszköz, mint a Postman vagy a cURL használatával HTTP POST-kérést küldhet az URL-végpontnak. Cserélje le az utolsó szegmenst a vezénylő függvény (HelloOrchestrator) nevére. Az URL-címnek hasonlónak kell lennie a következőhöz http://localhost:7071/api/orchestrators/HelloOrchestrator: .

    A válasz a HTTP-függvény kezdeti eredménye, amelyből megtudhatja, hogy a tartós vezénylés sikeresen elindult. Ez még nem a vezénylés végeredménye. A válasz tartalmaz néhány hasznos URL-címet. Egyelőre kérdezzük le a vezénylés állapotát.

  6. Másolja ki a böngésző címsorában lévő URL-címet statusQueryGetUri , és illessze be, és hajtsa végre a kérést. Másik lehetőségként továbbra is használhatja a Postmant a GET kérés kiadásához.

    A kérés lekérdezi az állapot vezénylési példányát. Egy végleges választ kell kapnia, amely megmutatja, hogy a példány befejeződött, és tartalmazza a tartós függvény kimeneteit vagy eredményeit. A következőképpen néz ki:

    {
        "name": "HelloOrchestrator",
        "instanceId": "9a528a9e926f4b46b7d3deaa134b7e8a",
        "runtimeStatus": "Completed",
        "input": null,
        "customStatus": null,
        "output": [
            "Hello Tokyo!",
            "Hello Seattle!",
            "Hello London!"
        ],
        "createdTime": "2020-03-18T21:54:49Z",
        "lastUpdatedTime": "2020-03-18T21:54:54Z"
    }
    
  7. A hibakeresés leállításához nyomja le a Shift + F5 billentyűkombinációt a VS Code-ban.

Miután ellenőrizte, hogy a függvény megfelelően fut a helyi számítógépen, tegye közzé a projektet az Azure-ban.

Bejelentkezés az Azure-ba

Az Azure-erőforrások létrehozása vagy az alkalmazás közzététele előtt be kell jelentkeznie az Azure-ba.

  1. Ha még nincs bejelentkezve, válassza az Azure ikont a Tevékenységsávon. Ezután az Erőforrások területen válassza a Bejelentkezés az Azure-ba... lehetőséget.

    Képernyőkép az Azure-ba való bejelentkezésről a VS Code-ban.

    Ha már bejelentkezett, és láthatja a meglévő előfizetéseit, lépjen a következő szakaszra. Ha még nem rendelkezik Azure-fiókkal, válassza az Azure-fiók létrehozása...lehetőséget. A diákok választhatják az Azure for Students-fiók létrehozását....

  2. Amikor a rendszer kéri a böngészőben, válassza ki az Azure-fiókját, és jelentkezzen be az Azure-fiók hitelesítő adataival. Ha új fiókot hoz létre, a fiók létrehozása után bejelentkezhet.

  3. Miután sikeresen bejelentkezett, bezárhatja az új böngészőablakot. Az Azure-fiókhoz tartozó előfizetések az oldalsávon jelennek meg.

A függvényalkalmazás létrehozása az Azure-ban

Ebben a szakaszban egy függvényalkalmazást és kapcsolódó erőforrásokat hoz létre az Azure-előfizetésében.

  1. Válassza az Azure ikont a Tevékenységsávon. Ezután az Erőforrások területen válassza az ikont + , és válassza a Függvényalkalmazás létrehozása az Azure-ban lehetőséget.

    Erőforrás létrehozása az Azure-előfizetésben

  2. Amikor a rendszer kéri, adja meg az alábbi információkat:

    Adatkérés Kiválasztás
    Előfizetés kiválasztása Válassza ki a használni kívánt előfizetést. Ez a kérdés nem jelenik meg, ha csak egy előfizetés látható az Erőforrások területen.
    Adja meg a függvényalkalmazás globálisan egyedi nevét Írjon be egy URL-elérési úton érvényes nevet. A beírt név ellenőrzése ellenőrzi, hogy egyedi-e az Azure Functionsben.
    Futtatókörnyezeti verem kiválasztása Válassza ki azt a nyelvi verziót, amelyen helyileg fut.
    Új erőforrások helyének kiválasztása A jobb teljesítmény érdekében válasszon egy Önhöz közeli régiót.

    A bővítmény az egyes erőforrások állapotát jeleníti meg az Azure-ban az Azure: Tevékenységnapló panelen való létrehozásuk során.

    Az Azure-erőforrások létrehozásának naplója

  3. Amikor a létrehozás befejeződött, a következő Azure-erőforrások jönnek létre az előfizetésben. Az erőforrások neve a függvényalkalmazás neve alapján van elnevezve:

    • Egy erőforráscsoport, amely a kapcsolódó erőforrások logikai tárolója.
    • Egy standard Azure Storage-fiók, amely fenntartja a projektek állapotát és egyéb adatait.
    • Egy függvényalkalmazás, amely a függvénykód végrehajtásához biztosítja a környezetet. A függvényalkalmazásokkal logikai egységként csoportosíthatja a függvényeket az erőforrások egyszerűbb kezelése, üzembe helyezése és megosztása érdekében ugyanabban az üzemeltetési csomagban.
    • App Service-csomag, amely meghatározza a függvényalkalmazás mögöttes gazdagépét.
    • Egy alkalmazás Elemzések függvényalkalmazáshoz csatlakoztatott példányt, amely nyomon követi a függvények használatát az alkalmazásban.

    A függvényalkalmazás létrehozása és a telepítőcsomag alkalmazása után megjelenik egy értesítés.

    Tipp.

    Alapértelmezés szerint a függvényalkalmazás által igényelt Azure-erőforrások a megadott függvényalkalmazás-név alapján jönnek létre. Alapértelmezés szerint ugyanabban az új erőforráscsoportban is létrejönnek a függvényalkalmazással. Ha testre szeretné szabni ezeknek az erőforrásoknak a nevét, vagy újra szeretné használni a meglévő erőforrásokat, akkor inkább speciális létrehozási lehetőségekkel kell közzétennie a projektet.

A projekt központi telepítése az Azure-ban

Fontos

A meglévő függvényalkalmazásban való üzembe helyezés mindig felülírja az alkalmazás tartalmát az Azure-ban.

  1. Az Azure-tevékenység Erőforrások területén keresse meg az imént létrehozott függvényalkalmazás-erőforrást, kattintson a jobb gombbal az erőforrásra, és válassza az Üzembe helyezés függvényalkalmazáshoz... lehetőséget.

  2. Amikor a rendszer kéri a korábbi üzemelő példányok felülírását, válassza az Üzembe helyezés lehetőséget a függvénykód új függvényalkalmazás-erőforrásban való üzembe helyezéséhez.

  3. Az üzembe helyezés befejezése után válassza a Kimenet megtekintése 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.

    Képernyőkép a Kimenet megtekintése ablakról.

A függvény tesztelése az Azure-ban

  1. Másolja a vágólapra a HTTP-eseményindító URL-címét az Output (Kimenet) panelről. A HTTP-aktivált függvényt meghívó URL-címnek a következő formátumban kell lennie: https://<functionappname>.azurewebsites.net/api/orchestrators/HelloOrchestrator

  2. Illessze be a HTTP-kérelem új URL-címét a böngésző címsorába. A közzétett alkalmazás használatakor ugyanazt az állapotválaszt kell kapnia, mint korábban.

Következő lépések

PowerShell tartós függvényalkalmazás létrehozásához és közzétételéhez a Visual Studio Code-ot használta.