Maison > développement back-end > Golang > le corps du texte

Utilisation d'AWS Lambda in Go : un guide complet

王林
Libérer: 2023-06-17 20:00:08
original
998 Les gens l'ont consulté

Utiliser AWS Lambda in Go : un guide complet

AWS Lambda est une puissante plateforme informatique sans serveur qui vous permet d'exécuter du code dans le cloud sans avoir à vous soucier de la configuration et de la gestion du serveur. Pour les applications basées sur le langage Go, AWS Lambda offre une disponibilité et une évolutivité extrêmement élevées, c'est donc le premier choix de nombreux développeurs Go. Ce guide vous expliquera comment utiliser AWS Lambda en langage Go.

  1. Configuration de l'AWS CLI et du SDK AWS

Avant de commencer, vous devez installer l'AWS CLI et le SDK AWS pour interagir avec Lambda . L'AWS CLI vous permet d'appeler facilement les services AWS à partir de l'interface de ligne de commande, tandis que le SDK AWS vous permet de programmer à l'aide de divers langages de programmation. Vous pouvez télécharger le programme d'installation adapté à votre plate-forme sur le site officiel d'AWS.

  1. Créez ou sélectionnez un compartiment S3

AWS Le code Lambda doit être téléchargé dans le compartiment S3. Si vous n'avez pas encore créé de bucket, vous pouvez en créer un en suivant ces étapes :

  • Connectez-vous à la console AWS et sélectionnez le service S3.
  • Cliquez sur le bouton "Créer un bucket".
  • Entrez un nom de bucket global unique et sélectionnez une région.
  • Cochez l'option "Activer le contrôle de version" pour vous assurer que votre code Lambda peut gérer les versions lors de la mise à jour.
  1. Écrire le code de la fonction Lambda

Ensuite, vous devez écrire le code de la fonction Lambda du langage Go qui convient à votre application .

Tout d'abord, créez un dossier pour stocker le code et créez un fichier nommé main.go à l'intérieur. Vous pouvez mettre l'exemple de code suivant dans le fichier :

package main

import (
    "context"
    "fmt"
    "github.com/aws/aws-lambda-go/lambda"
)

type Request struct {
    Name string `json:"name"`
}

type Response struct {
    Greeting string `json:"greeting"`
}

func HandleRequest(ctx context.Context, request Request) (Response, error) {
    message := fmt.Sprintf("Hello, %s!", request.Name)
    return Response{Greeting: message}, nil
}

func main() {
    lambda.Start(HandleRequest)
}
Copier après la connexion

Dans le code ci-dessus, la fonction HandleRequest construit le message de bienvenue en extrayant le champ de nom de la requête et l'envoie comme réponse. Vous avez également remarqué que nous avons importé le package de code « go-lambda », en particulier « aws/aws-lambda-go/lambda », qui fournit toutes les fonctionnalités requises par les développeurs du langage AWS Lambda Go.

  1. Compile le code de la fonction Lambda

Pour déployer le code Go sur Lambda, vous devez compiler le code dans un fichier binaire. Voici les étapes à suivre pour procéder :

  • Ouvrez un terminal dans votre répertoire de code et exécutez la commande suivante pour créer un fichier exécutable :
GOOS=linux GOARCH=amd64 go build -o main main.go
Copier après la connexion
# 🎜🎜#
    Téléchargez le fichier dans le bucket S3 :
  • aws s3 cp main s3://your-bucket-name/
    Copier après la connexion
    Créer une fonction Lambda
Maintenant, vous Vous pouvez utiliser le service AWS Lambda pour créer une nouvelle fonction Lambda afin d'exécuter votre code.

    Connectez-vous à la console AWS et sélectionnez le service Lambda.
  • Cliquez sur le bouton "Créer une fonction".
  • Dans l'onglet "Bases des fonctions" :

      Sélectionnez l'option "Utiliser un rôle existant" et sélectionnez un rôle existant, ou cliquez sur "Créer un nouveau rôle" et suivez les invites pour créer un nouveau rôle. Ce rôle sera utilisé pour autoriser votre fonction Lambda à accéder à d'autres services et ressources AWS.
    • Donnez un nom unique à votre fonction Lambda et choisissez un runtime approprié. Ici, nous utilisons Go 1.x.
  • Dans l'onglet "Code de fonction" :

      Sélectionnez l'option "Télécharger un fichier depuis le compartiment S3" et entrez le nom de votre compartiment S3 et votre chemin binaire.
    • Définissez la valeur du champ "Handler" sur le nom du fichier binaire (sans compter l'extension ".go" ou ".exe") et le nom de la fonction. Par exemple "main.HandleRequest".
  • Dans "Paramètres avancés", vous pouvez configurer davantage la fonction Lambda, comme la confirmation de la taille de la mémoire utilisée, du délai d'expiration, des variables d'environnement, etc. Cliquez ensuite sur le bouton « Créer une fonction » pour créer une fonction Lambda.
    Test de la fonction Lambda
Vous pouvez créer un événement de test pour une fonction dans la console AWS afin de tester la fonction. Créez un événement de test JSON, par exemple :

{
   "name": "Bob"
}
Copier après la connexion
Cliquez ensuite sur le bouton "Test" pour exécuter votre fonction et vérifier si elle renvoie le résultat attendu.

Conclusion

Maintenant, vous avez appris à utiliser AWS Lambda en langage Go. Bien qu'il ne s'agisse que d'une introduction (de nombreuses fonctionnalités sont disponibles pour AWS Lambda), il devrait vous fournir suffisamment d'informations pour que vous puissiez commencer à expérimenter la création et le déploiement de vos propres applications à l'aide d'AWS Lambda. Bonne chance!

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!