Megosztás a következőn keresztül:


Rövid útmutató: Go vagy Rust függvény létrehozása az Azure-ban a Visual Studio Code használatával

Ebben a cikkben a Visual Studio Code használatával hoz létre egy egyéni kezelőfüggvényt , amely a HTTP-kérelmekre válaszol. A kódot a helyi tesztelését követően az Azure Functions kiszolgáló nélküli környezetében helyezheti üzembe.

Az egyéni kezelők http-kiszolgálói folyamat futtatásával bármilyen nyelven vagy futtatókörnyezetben létrehozhatnak függvényeket. Ez a cikk a Go és a Rust használatát is támogatja.

A rövid útmutató elvégzése néhány cent (USD) vagy még kevesebb költséggel jár az Azure-fiókját illetően.

A környezet konfigurálása

Mielőtt hozzálátna, győződjön meg róla, hogy megfelel az alábbi követelményeknek:

Core Tools telepítése vagy frissítése

A Visual Studio Code Azure Functions-bővítménye integrálva van az Azure Functions Core Toolsszal, így a függvényeket helyileg futtathatja és hibakereséssel végezheti el a Visual Studio Code-ban az Azure Functions-futtatókörnyezet használatával. Az első lépések előtt érdemes helyileg telepíteni a Core Toolst, vagy frissíteni egy meglévő telepítést a legújabb verzió használatára.

A Visual Studio Code-ban válassza az F1 lehetőséget a parancskatalógus megnyitásához, majd keresse meg és futtassa az Azure Functions: Install or Update Core Tools parancsot.

Ez a parancs megpróbálja elindítani a Core Tools legújabb verziójának csomagalapú telepítését, vagy frissíteni egy meglévő csomagalapú telepítést. Ha nincs telepítve az npm vagy a Homebrew a helyi számítógépen, manuálisan kell telepítenie vagy frissítenie a Core Toolst.

Helyi projekt létrehozása

Ebben a szakaszban a Visual Studio Code használatával hoz létre egy helyi Azure Functions egyéni kezelőprojektet. A cikk későbbi részében közzéteszi a függvény kódját az Azure-ban.

  1. A Visual Studio Code-ban nyomja le az F1 billentyűt a parancskatalógus megnyitásához, majd a parancs kereséséhez és futtatásához Azure Functions: Create New Project....

  2. Válassza ki a projekt-munkaterület könyvtárhelyét, és válassza a Kiválasztás lehetőséget. Hozzon létre egy új mappát, vagy válasszon egy üres mappát a projekt-munkaterülethez. Ne válasszon olyan projektmappát, amely már része egy munkaterületnek.

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

    Felszólítás Kiválasztás
    A függvényprojekt nyelvének kiválasztása Válassza a Custom Handler elemet.
    Sablon kiválasztása a projekt első függvényéhez Válassza a HTTP trigger elemet.
    Függvénynév megadása Gépelje be: HttpExample.
    Engedélyszint Válassza a Anonymouslehetőséget, amely lehetővé teszi, hogy bárki meghívja a függvényvégpontot. További információ: Engedélyezési szint.
    Válassza ki, hogyan szeretné megnyitni a projektet Válassza a Open in current window elemet.

    Ezen információk felhasználásával a Visual Studio Code létrehoz egy Azure Functions-projektet EGY HTTP-eseményindítóval. A helyi projektfájlokat az Explorerben tekintheti meg.

A függvény létrehozása és létrehozása

A HttpExample mappa function.json fájlja HTTP-eseményindító függvényt deklarál. A függvényt egy kezelő hozzáadásával és végrehajthatóvá alakításával hajthatja végre.

  1. Új fájl létrehozásához nyomja le a Ctrl + N (cmd + N macOS) billentyűkombinációt. Mentse a kezelő.go fájlként a függvényalkalmazás gyökerében (ugyanabban a mappában, mint host.json).

  2. A handler.go fájlban adja hozzá a következő kódot, és mentse a fájlt. Ez a Go egyéni kezelője.

    package main
    
    import (
        "fmt"
        "log"
        "net/http"
        "os"
    )
    
    func helloHandler(w http.ResponseWriter, r *http.Request) {
        message := "This HTTP triggered function executed successfully. Pass a name in the query string for a personalized response.\n"
        name := r.URL.Query().Get("name")
        if name != "" {
            message = fmt.Sprintf("Hello, %s. This HTTP triggered function executed successfully.\n", name)
        }
        fmt.Fprint(w, message)
    }
    
    func main() {
        listenAddr := ":8080"
        if val, ok := os.LookupEnv("FUNCTIONS_CUSTOMHANDLER_PORT"); ok {
            listenAddr = ":" + val
        }
        http.HandleFunc("/api/HttpExample", helloHandler)
        log.Printf("About to listen on %s. Go to https://127.0.0.1%s/", listenAddr, listenAddr)
        log.Fatal(http.ListenAndServe(listenAddr, nil))
    }
    
  3. Nyomja le a Ctrl + Shift+ billentyűkombinációt, vagy a Terminál menü Új terminál elemét választva nyisson meg egy új integrált terminált a VS Code-ban.

  4. Állítsa össze az egyéni kezelőt az alábbi paranccsal. A függvényalkalmazás gyökérmappájában egy végrehajtható fájl neve handler (handler.exe Windows rendszeren) található.

    go build handler.go
    

    VS Code – Egyéni Build Go kezelő

A függvényalkalmazás konfigurálása

A függvény gazdagépét úgy kell konfigurálni, hogy az indításkor futtassa az egyéni kezelő bináris fájlját.

  1. Nyissa meg a host.json.

  2. A szakaszban állítsa a customHandler.description következő értékre defaultExecutablePath handler (Windows rendszeren: handler.exe).

  3. customHandler A szakaszban adjon hozzá egy elnevezett enableForwardingHttpRequest tulajdonságot, és állítsa az értékét a következőretrue: . A csak HTTP-eseményindítóból álló függvények esetében ez a beállítás leegyszerűsíti a programozást, mivel lehetővé teszi, hogy az egyéni kezelőkérés hasznos adatai helyett egy tipikus HTTP-kéréssel dolgozzon.

  4. Győződjön meg arról, hogy a customHandler szakasz az alábbi példához hasonlóan néz ki. Mentse a fájlt.

    "customHandler": {
      "description": {
        "defaultExecutablePath": "handler",
        "workingDirectory": "",
        "arguments": []
      },
      "enableForwardingHttpRequest": true
    }
    

A függvényalkalmazás úgy van konfigurálva, hogy elindítsa a végrehajtható egyéni kezelőt.

Függvény helyi futtatása

Ezt a projektet a helyi fejlesztői számítógépen futtathatja, mielőtt közzétennénk az Azure-ban.

  1. Az integrált terminálban indítsa el a függvényalkalmazást az Azure Functions Core Tools használatával.

    func start
    
  2. A Core Tools futtatásával lépjen a következő URL-címre egy GET-kérés végrehajtásához, amely lekérdezési sztringet is tartalmaz ?name=Functions .

    http://localhost:7071/api/HttpExample?name=Functions

  3. A rendszer a következőhöz hasonló választ ad vissza egy böngészőben:

    Browser – localhost példakimenet

  4. A kéréssel kapcsolatos információk a Terminál panelen jelennek meg.

    Feladatgazda indítása – VS Code terminálkimenet

  5. A Core Tools leállításához nyomja le a Ctrl + C 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 a Visual Studio Code használatával közvetlenül az Azure-ban közzétenni a projektet.

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

Az Azure egyéni kezelőjének fordítása

Ebben a szakaszban közzéteheti a projektet az Azure-ban egy Linuxot futtató függvényalkalmazásban. A legtöbb esetben újra kell lefordítania a bináris fájlt, és a konfigurációt úgy kell módosítania, hogy megfeleljen a célplatformnak, mielőtt közzétennénk az Azure-ban.

  1. Az integrált terminálban fordítsa le a kezelőt Linux/x64 rendszerre. A függvényalkalmazás gyökérkönyvtárában létrejön egy bináris név handler .

    GOOS=linux GOARCH=amd64 go build handler.go
    

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:

    Felszólítás Kiválasztás
    Előfizetés kiválasztása Válassza ki a használni kívánt előfizetést. Ez 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 az Egyéni kezelő lehetőséget.
    Ú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, miközben az Azure-ban jönnek létre az Azure: Tevékenységnapló panelen.

    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.
    • Egy Azure-alkalmazás szolgáltatáscsomag, amely meghatározza a függvényalkalmazás mögöttes gazdagépét.
    • 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.

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

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. A parancskatalógusban adja meg, majd válassza az Azure Functions: Üzembe helyezés függvényalkalmazásban lehetőséget.

  2. Válassza ki az imént létrehozott függvényalkalmazást. 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ésekor 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 futtatása az Azure-ban

  1. Nyomja le az F1 billentyűt a parancskatalógus megjelenítéséhez, majd keresse meg és futtassa a parancsotAzure Functions:Execute Function Now.... Ha a rendszer kéri, válassza ki az előfizetését.

  2. Válassza ki az új függvényalkalmazás-erőforrást és HttpExample a függvényt.

  3. Az Enter kérelem törzstípusában { "name": "Azure" }nyomja le az Enter billentyűt, és küldje el ezt a kérésüzenetet a függvénynek.

  4. Amikor a függvény az Azure-ban fut, a válasz megjelenik az értesítési területen. Bontsa ki az értesítést a teljes válasz áttekintéséhez.

Az erőforrások eltávolítása

Ha folytatja a következő lépést , és hozzáad egy Azure Storage-üzenetsor-kötést a függvényhez, az összes erőforrást helyben kell tartania ahhoz, hogy a már elvégzett adatokra építkezhessenek.

Ellenkező esetben az alábbi lépésekkel törölheti a függvényalkalmazást és annak kapcsolódó erőforrásait, hogy elkerülje a további költségek felmerülését.

  1. A Visual Studio Code-ban nyomja le az F1 billentyűt a parancskatalógus megnyitásához. A parancskatalógusban keresse meg és válassza ki a kívánt parancsot Azure: Open in portal.

  2. Válassza ki a függvényalkalmazást, és nyomja le az Enter billentyűt. Megnyílik a függvényalkalmazás lapja az Azure Portalon.

  3. Az Áttekintés lapon válassza az Erőforráscsoport melletti elnevezett hivatkozást.

    Képernyőkép a függvényalkalmazás oldaláról törölni kívánt erőforráscsoport kiválasztásáról.

  4. Az Erőforráscsoport lapon tekintse át a belefoglalt erőforrások listáját, és ellenőrizze, hogy ezek-e törölni kívánt erőforrások.

  5. Válassza az Erőforráscsoport törlése elemet, majd kövesse az utasításokat.

    A törlés eltarthat néhány percig. Amint a művelet befejeződött, néhány másodpercre egy értesítés jelenik meg. Az értesítést úgy is megtekintheti, ha kiválasztja a harang ikont az oldal tetején.

A Functions-költségekkel kapcsolatos további információkért tekintse meg a használati terv költségeinek becslését.

Következő lépések