Rövid útmutató: TypeScript-Durable Functions-alkalmazás létrehozása

A Azure Functions egyik funkciója, a Durable Functions használatával állapotalapú függvényeket írhat kiszolgáló nélküli környezetben. Durable Functions automatikusan kezeli az állapotot, az ellenőrzőpontokat és az újraindulást az alkalmazásban.

Ebben a rövid útmutatóban a Azure Functions bővítményt használja a Visual Studio Code-ban, hogy helyileg hozzon létre és teszteljen egy Durable Functions alkalmazást, majd közzétegye az Azure-ban. Az alkalmazás összehangolja és láncolja a hívásokat olyan tevékenységi függvényekhez, amelyek egy sor városnév üdvözleteit adják vissza.

Important

A cikk tartalma a Node.js programozási modell választásától függően változik a lap tetején található választóban. 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 migrálási útmutatóban további információt olvashat a v3 és a v4 közötti különbségekről.

Tip

A v4 programozási modell a jelenlegi alapértelmezett Node.js Azure Functions, és új projektekhez ajánlott. A v3-modell olyan meglévő alkalmazásokhoz érhető el, amelyek még nem migráltak.

 Edge-ablak képernyőképe. Az ablakban egy egyszerű Durable Functions-alkalmazás meghívásának kimenete látható a Azure.

Prerequisites

A gyors kezdéshez ezekre lesz szüksége:

  • A Visual Studio Code bővítmény Azure Functions 1.10.4-es vagy újabb verziója telepítve van.
  • EGY HTTP-teszteszköz , amely biztonságossá teszi az adatokat. További információ: HTTP-teszteszközök.

  • Azure-előfizetés. A Durable Functions használatához rendelkeznie kell egy Azure Storage fiókkal.

  • Node.js 16.x+ verzió van telepítve.
  • Node.js 18.x+ verzió van telepítve.

Ha nem rendelkezik Azure-fiókkal, a kezdés előtt hozzon létre egy ingyenes fiókot .

Helyi projekt létrehozása

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

  1. A Visual Studio Code válassza az F1 (vagy a Ctrl/Cmd+Shift+P) billentyűkombinációt a parancskatalógus megnyitásához. A promptnál (>) írja be, majd válassza a Azure Functions: Új projekt létrehozása lehetőséget.

    Screenshot, amely a Visual Studio Code parancskatalógust jeleníti meg, Azure Functions Új projekt létrehozása kiemelve.

  2. Válassza a Tallózás lehetőséget. A Mappa kiválasztása párbeszédpanelen lépjen a projekthez használni kívánt mappára, majd válassza a Kiválasztás lehetőséget.

  1. A parancssorban adja meg a következő információkat:

    Haladéktalan Action Description
    Nyelv kiválasztása a függvényalkalmazás-projekthez Válassza a TypeScript lehetőséget. Létrehoz egy helyi Node.js Functions-projektet a TypeScript használatával.
    JavaScript-programozási modell kiválasztása Válassza a V3 modell lehetőséget. Beállítja a v3-programozási modellt.
    Verzió kiválasztása Válassza a Azure Functions v4 lehetőséget. Ez a lehetőség 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 Válassza Kihagyás egyelőrelehetőséget.
    Válassza ki, hogyan szeretné megnyitni a projektet Válassza a Megnyitás az aktuális ablakban lehetőséget. Megnyitja Visual Studio Code a kijelölt mappában.
  1. A parancssorban adja meg a következő információkat:

    Haladéktalan Action Description
    Nyelv kiválasztása a függvényalkalmazás-projekthez Válassza a TypeScript lehetőséget. Létrehoz egy helyi Node.js Functions-projektet a TypeScript használatával.
    JavaScript-programozási modell kiválasztása Válassza a V4 modell lehetőséget. Beállítja a v4 programozási modellt.
    Verzió kiválasztása Válassza a Azure Functions v4 lehetőséget. Ez a lehetőség 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 Válassza Kihagyás egyelőrelehetőséget.
    Válassza ki, hogyan szeretné megnyitni a projektet Válassza a Megnyitás az aktuális ablakban lehetőséget. Megnyitja Visual Studio Code a kijelölt mappában.

Visual Studio Code telepíti Azure Functions Core Toolst, ha projekt létrehozásához szükséges. 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 egy package.json és egy tsconfig.json fájl is létrejön.

A durable-functions npm csomag telepítése

Ha Durable Functions szeretne használni egy Node.js függvényalkalmazásban, használja a durable-functions npm csomagot.

  1. A View menüben vagy a Ctrl+Shift+` billentyűkombinációval nyisson meg egy új terminált a Visual Studio Code.

  2. A csomagot a függvényalkalmazás gyökérkönyvtárában lévő npm install durable-functions parancs futtatásával telepítse.

Note

Ez telepíti a durable-functions csomag 3.x verzióját, amely a v4 programozási modellt támogató verzió. Az npm-csomag főverziója nem felel meg a Node.js programozási modell verziójának.

Hozd létre a függvényeidet

A legalapvetőbb Durable Functions alkalmazás három funkcióval rendelkezik:

  • Vezénylő függvény: Más függvényeket vezénylő munkafolyamat.
  • Tevékenységfüggvény: A vezénylő függvény által hívott függvény, amely elvégzi a munkát, és opcionálisan egy értéket ad vissza.
  • Client függvény: Az Azure egy reguláris függvénye, amely elindít egy vezénylőfüggvényt. Ez a példa EGY HTTP-aktivált függvényt használ.

Orchestrator függvény

Sablonnal hozhatja létre a Durable Functions kódot a projektben.

  1. A parancskatalógusban írja be az Azure Functions: Függvény létrehozása parancsot, majd válassza ki azt.

  2. A parancssorban adja meg a következő információkat:

    Haladéktalan Action Description
    Sablon kiválasztása a függvényhez Válassza a Durable Functions orchestrator lehetőséget. A Durable Functions folyamatvezérlést hoz létre.
    Tartós tárolási típus kiválasztása Válassza Azure Storage (Alapértelmezett) lehetőséget. Beállítja, hogy melyik háttértárat használja a Durable Functions alkalmazás.
    Függvénynév megadása Adja meg a HelloOrchestratort. A függvény neve.

Felvett egy orchestratort a tevékenységfüggvények koordinálásához. Nyissa meg a HelloOrchestrator/index.ts a vezénylő függvény megtekintéséhez. Minden hívás meghívást indít a context.df.callActivity-re egy tevékenységfüggvény formájában, amelynek neve Hello.

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

Tevékenységfüggvény

  1. A parancskatalógusban írja be az Azure Functions: Függvény létrehozása parancsot, majd válassza ki azt.

  2. A parancssorban adja meg a következő információkat:

    Haladéktalan Action Description
    Sablon kiválasztása a függvényhez Válassza a Durable Functions tevékenységet. Létrehoz egy tevékenységfüggvényt.
    Függvénynév megadása Adja meg a Hello billentyűt. A tevékenységi függvény neve.

Hozzáadta a Hello tevékenységfüggvényt, amelyet az orchesztrátor meghív. Nyissa meg a Hello/index.ts elemet, és ellenőrizze, hogy a név bemenetként szerepel-e, és egy üdvözlést ad vissza. A tevékenységfüggvények esetében a munkafolyamatban "a valódi munkát" hajtja végre, például adatbázis-hívást kezdeményez vagy nemdeterminisztikus számításokat hajt végre.

Végül hozzáad egy HTTP-aktivált függvényt, amely elindítja az orchestrációt.

Ügyfél-függvény (HTTP-indító)

  1. A parancs palettában írja be, majd válassza ki a Azure Functions: Create Function lehetőséget.

  2. A parancssorban adja meg a következő információkat:

    Haladéktalan Action Description
    Sablon kiválasztása a függvényhez Válassza a Durable Functions HTTP starter lehetőséget. Létrehoz egy HTTP indítófüggvényt.
    Függvénynév megadása Válassza a DurableFunctionsHttpStart lehetőséget. A tevékenységfüggvény neve.
    Engedélyezési szint Válassza a Névtelen lehetőséget. Demó céljából ez az érték lehetővé teszi a függvény meghívását hitelesítés nélkül.

Hozzáadtál egy HTTP-aktivált függvényt, amely orchestrációt indít el. Nyissa meg a DurableFunctionsHttpStart/index.ts fájlt, hogy lássa, hogyan indít el egy új vezénylést a client.startNew használatával. Azután client.createCheckStatusResponse segítségével visszaad egy HTTP-választ, amely URL-eket tartalmaz az új orchestráció monitorozására és kezelésére.

Most már rendelkezik egy Durable Functions alkalmazással, amelyet helyileg futtathat és üzembe helyezhet Azure.

A v4-et használó programozási modell egyik előnye a függvények írásának rugalmassága. A v4-modellben egyetlen sablon használatával hozhatja létre a projekt mindhárom függvényét egy fájlban.

  1. A parancskatalógusban írja be az Azure Functions: Függvény létrehozása parancsot, majd válassza ki azt.

  2. A parancssorban adja meg a következő információkat:

    Haladéktalan Action Description
    Sablon kiválasztása a függvényhez Válassza a Durable Functions orchestrator lehetőséget. Létrehoz egy fájlt, amely egy Durable Functions alkalmazás vezénylését, egy tevékenységfüggvényt és egy tartós ügyfélindító függvényt tartalmazza.
    Tartós tárolási típus kiválasztása Válassza Azure Storage (Alapértelmezett) lehetőséget. Beállítja a tárolási háttérrendszert a Durable Függvény használatára.
    Függvénynév megadása Adja meg a Hello billentyűt. A tartós függvény neve.

Nyissa meg az src/functions/hello.ts elemet a létrehozott függvények megtekintéséhez.

Egy helloOrchestrator nevű vezénylőt hozott létre a tevékenységfüggvények koordinálására. Minden hívás során a context.df.callActivity meghív egy hello nevű tevékenységfüggvényt.

Ön hozzáadta az hello tevékenységfüggvényt is, amelyet az orchestrátor hív meg. Ugyanebben a fájlban láthatja, hogy egy nevet ad vissza bemenetként, és egy üdvözlést ad vissza. A tevékenységfüggvények esetében a munkafolyamatban "a valódi munkát" hajtja végre, például adatbázis-hívást kezdeményez vagy nemdeterminisztikus számításokat hajt végre.

Végül hozzáadott egy HTTP-aktivált függvényt, amely elindít egy vezénylést. Ugyanebben a fájlban láthatja, hogy a client.startNew használatával új vezénylést indít. Azután client.createCheckStatusResponse segítségével visszaad egy HTTP-választ, amely URL-eket tartalmaz az új orchestráció monitorozására és kezelésére.

Most már rendelkezik egy Durable Functions alkalmazással, amelyet helyileg futtathat és üzembe helyezhet Azure.

A függvény helyi tesztelése

Azure Functions Core Tools lehetővé teszi egy Azure Functions projekt futtatását a helyi fejlesztési számítógépen. A rendszer arra kéri, hogy telepítse ezeket az eszközöket, amikor először indít el függvényt Visual Studio Code.

Note

Amikor először futtatja az alkalmazást helyileg, Visual Studio Code megkéri, hogy válasszon vagy hozzon létre egy Azure Storage fiókot. Durable Functions a vezénylési állapot megőrzéséhez egy tárfiók szükséges.

  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 (a Hello/index.ts fájlban). Nyomja meg az F5-öt, vagy válassza a Hibakeresés indítása opciót a parancspalettában a függvényalkalmazás-projekt elindításához. A Core Tools kimenete megjelenik a terminálpanelen.

    Note

    További információ a hibakeresésről: Durable Functions diagnosztika.

  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 (src/functions/hello.ts). Nyomja meg az F5-öt, vagy válassza a Hibakeresés indítása opciót a parancspalettában a függvényalkalmazás-projekt elindításához. A Core Tools kimenete megjelenik a terminálpanelen.

    Note

    További információ a hibakeresésről: Durable Functions diagnosztika.

  1. Durable Functions futtatásához Azure Storage fiók szükséges. Amikor Visual Studio Code kéri, hogy válasszon ki egy tárfiókot, válassza a Tárfiók kijelölése lehetőséget.

    A Visual Studio Code riasztási ablak képernyőképe. A tárfiók kijelölése kiemelve.

  2. Az utasításokat követve adja meg a következő információkat egy új tárfiók létrehozásához Azure.

    Haladéktalan Action Description
    Előfizetés kiválasztása Válassza ki az előfizetés nevét. Az Ön Azure előfizetése.
    Tárfiók kiválasztása Válassza az Új tárfiók létrehozása lehetőséget.
    Adja meg az új tárfiók nevét Adjon meg egy egyedi nevet. A létrehozandó tárfiók neve.
    Erőforráscsoport kiválasztása Adjon meg egy egyedi nevet. A létrehozandó erőforráscsoport neve.
    Hely kiválasztása Válasszon ki egy Azure régiót. Válasszon ki egy Önhöz közeli régiót.
  3. A terminálpanelen másolja ki a HTTP-aktivált függvény URL-végpontját.

    Screenshot, amely a Visual Studio Code terminálpanelt jeleníti meg. A HTTP kezdőfüggvény URL-címe ki van emelve.

  1. A böngésző vagy a HTTP-teszteszköz 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. Tájékoztatja Önt, hogy a tartós folyamatvezérlés sikeresen elindult. Még nem jeleníti meg a vezénylés végeredményét. A válasz tartalmaz néhány hasznos URL-címet. Egyelőre kérdezze le a vezénylés állapotát.

  1. A böngésző vagy a HTTP-teszteszköz 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. Tájékoztatja Önt, hogy a tartós folyamatvezérlés sikeresen elindult. Még nem jeleníti meg a vezénylés végeredményét. A válasz tartalmaz néhány hasznos URL-címet. Egyelőre kérdezze le a vezénylés állapotát.

  1. Másolja ki a cél URL-címét statusQueryGetUri, illessze be a böngésző címsorában, és hajtsa végre a kérést. A GET kérés kiadásához továbbra is használhatja a HTTP-teszteszközt.

    A kérés lekérdezi az orkesztációs példányt az állapotáról. Látnia kell, hogy a példány befejeződött, és tartalmazza a tartós függvény kimeneteit vagy eredményeit. A következő példához hasonlóan 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"
    }
    
  1. Másolja ki a cél URL-címét statusQueryGetUri, illessze be a böngésző címsorában, és hajtsa végre a kérést. A GET kérés kiadásához továbbra is használhatja a HTTP-teszteszközt.

    A kérés lekérdezi az orkesztációs példányt az állapotáról. Látnia kell, hogy a példány befejeződött, és tartalmazza a Durable Functions alkalmazás kimeneteit vagy eredményeit. A következő példához hasonlóan néz ki:

    {
        "name": "helloOrchestrator",
        "instanceId": "6ba3f77933b1461ea1a3828c013c9d56",
        "runtimeStatus": "Completed",
        "input": "",
        "customStatus": null,
        "output": [
            "Hello, Tokyo",
            "Hello, Seattle",
            "Hello, Cairo"
        ],
        "createdTime": "2023-02-13T23:02:21Z",
        "lastUpdatedTime": "2023-02-13T23:02:25Z"
    }
    
  1. A hibakeresés leállításához a Visual Studio Code válassza a Shift+F5 billentyűkombinációt.

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

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 nem jelentkezett be, a Tevékenységsávon válassza az Azure ikont. Ezután a Resources területen válassza Sign in to Azure.

    Az Azure bejelentkezési ablakának képernyőképe a Visual Studio 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 kiválaszthatják az Azure Diákfiók létrehozása lehetőséget.

  2. Amikor a rendszer kéri a böngészőben, válassza ki Azure fiókját, és jelentkezzen be a 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 a Azure

Ebben a szakaszban egy függvényalkalmazást hoz létre a Flex Consumption csomagban az Azure-előfizetés kapcsolódó erőforrásaival együtt. Számos erőforrás-létrehozási döntés az alapértelmezett viselkedés alapján történik. A létrehozott erőforrások további szabályozásához ehelyett speciális beállításokkal kell létrehoznia a függvényalkalmazást.

  1. A Visual Studio Code-ban nyomja meg az F1-et a parancspaletta megnyitásához. A parancssorban (>) írja be, majd válassza az Azure Functions: Függvényalkalmazás létrehozása az Azure-ben lehetőséget.

  2. A parancssorban adja meg a következő információkat:

    Haladéktalan Action
    Előfizetés kiválasztása Válassza ki a használni kívánt Azure előfizetést. A parancssor nem jelenik meg, ha csak egy előfizetés látható az Erőforrások területen.
    Adjon meg egy új függvényalkalmazásnevet Adjon meg egy url-útvonalon érvényes, globálisan egyedi nevet. A megadott nevet érvényesítjük, hogy biztosan egyedi legyen az Azure Functions-ben.
    Új erőforrások helyének kiválasztása Válasszon ki egy Azure régiót. A jobb teljesítmény érdekében válasszon ki egy Önhöz közeli régiót. Csak a Flex Consumption-csomagok által támogatott régiók jelennek meg.
    Futtatókörnyezeti verem kiválasztása Válassza ki a helyileg futtatott nyelvi verziót.
    Erőforrás-hitelesítés típusának kiválasztása Válassza ki a felügyelt identitást, amely a legbiztonságosabb lehetőség az alapértelmezett gazdagép tárfiókhoz való csatlakozáshoz.

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

    A képernyőkép az Azure erőforrások létrehozásának naplóját jeleníti meg.

  3. A függvényalkalmazás létrehozásakor a következő kapcsolódó erőforrások jönnek létre az Azure-előfizetésben. Az erőforrások neve a függvényalkalmazáshoz megadott név alapján lesz elnevezve.

    • Egy erőforráscsoport, amely a kapcsolódó erőforrások logikai tárolója.
    • 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.
    • Egy Azure App Service csomag, amely meghatározza a függvényalkalmazás mögöttes gazdagépét.
    • Egy standard Azure Storage-fiók, amelyet a Functions-gazdagép használ a függvényalkalmazás állapotának és egyéb információinak karbantartására.
    • A függvényalkalmazáshoz csatlakoztatott Application Insights-példány, amely nyomon követi a függvények használatát az alkalmazásban.
    • Egy felhasználó által hozzárendelt felügyelt identitás, amely az új alapértelmezett gazdagép tárfiókjában a Storage Blob Data Közreműködői szerepkörhöz lett hozzáadva.

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

    Tip

    Alapértelmezés szerint a függvényalkalmazás által igényelt Azure-erőforrások a függvényalkalmazáshoz megadott név alapján jönnek létre. Alapértelmezés szerint az erőforrások ugyanabban az új erőforráscsoportban vannak létrehozva a függvényalkalmazással. Ha testre szeretné szabni a társított erőforrások nevét, vagy újra szeretné használni a meglévő erőforrásokat, tegye közzé a projektet speciális létrehozási lehetőségekkel.

Telepítse a projektet az Azure-ba

Important

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

  1. A parancskatalógusban írja be, majd válassza az Azure Functions: Üzembe helyezés függvényalkalmazásba lehetőséget.

  2. 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.

  3. 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.

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

Az Azure-ban egy függvény tesztelése

Important

A 4-es Node.js programozási modell használatához győződjön meg arról, hogy a függvényalkalmazás a Azure Functions futtatókörnyezet legalább 4.25-ös verzióján fut. A verziót a Azure portálon a Configuration>Function futtatókörnyezet beállításai, vagy a FUNCTIONS_EXTENSION_VERSION alkalmazásbeállítással ellenőrizheti.

  1. Másolja ki a HTTP-eseményindító URL-címét a kimeneti 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

  1. Másolja ki a HTTP-eseményindító URL-címét a kimeneti 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

  1. Illessze be a HTTP-kérés új URL-címét a böngésző címsorában. A közzétett alkalmazás használatakor számíthat arra, hogy ugyanazt az állapotválaszt kapja, mint a helyi tesztelés során.

A Visual Studio Code használatával létrehozott és közzétett TypeScript Durable Functions alkalmazás használatra kész.

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.