Seleziona le tue preferenze relative ai cookie

Utilizziamo cookie essenziali e strumenti simili necessari per fornire il nostro sito e i nostri servizi. Utilizziamo i cookie prestazionali per raccogliere statistiche anonime in modo da poter capire come i clienti utilizzano il nostro sito e apportare miglioramenti. I cookie essenziali non possono essere disattivati, ma puoi fare clic su \"Personalizza\" o \"Rifiuta\" per rifiutare i cookie prestazionali.

Se sei d'accordo, AWS e le terze parti approvate utilizzeranno i cookie anche per fornire utili funzionalità del sito, ricordare le tue preferenze e visualizzare contenuti pertinenti, inclusa la pubblicità pertinente. Per continuare senza accettare questi cookie, fai clic su \"Continua\" o \"Rifiuta\". Per effettuare scelte più dettagliate o saperne di più, fai clic su \"Personalizza\".

Implementazione di funzioni Lambda per Go con gli archivi di file .zip

Modalità Focus
Implementazione di funzioni Lambda per Go con gli archivi di file .zip - AWS Lambda

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Nota

Il client di runtime Rust è un pacchetto sperimentale. È soggetto a modifiche ed è destinato esclusivamente a scopi di valutazione.

Questa pagina descrive come compilare la funzione Rust e quindi distribuire il binario compilato su Cargo Lambda AWS Lambda. Mostra anche come distribuire il binario compilato con AWS Command Line Interface e la AWS Serverless Application Model CLI.

Prerequisiti

Compilazione di funzioni Rust su macOS, Windows o Linux

La procedura seguente mostra come creare il progetto per la prima funzione Lambda con Rust e compilarlo con Cargo Lambda.

  1. Installa Cargo Lambda, un sottocomando Cargo, che compila le funzioni Rust per Lambda su macOS, Windows e Linux.

    Per installare Cargo Lambda su qualsiasi sistema in cui è installato Python 3, utilizza pip:

    pip3 install cargo-lambda

    Per installare Cargo Lambda su macOS o Linux, utilizza Homebrew:

    brew tap cargo-lambda/cargo-lambda brew install cargo-lambda

    Per installare Cargo Lambda su Windows, utilizza Scoop:

    scoop bucket add cargo-lambda scoop install cargo-lambda/cargo-lambda

    Per altre opzioni, consulta la pagina Installazione nella documentazione di Cargo Lambda.

  2. Crea la struttura del pacchetto. Questo comando crea un codice di funzione di base in src/main.rs. A fini di test, puoi utilizzare questo codice o sostituirlo con il tuo codice personalizzato.

    cargo lambda new my-function
  3. All'interno della directory principale del pacchetto, esegui il sottocomando build per compilare il codice nella funzione.

    cargo lambda build --release

    (Facoltativo) Se vuoi usare AWS Graviton2 su Lambda, aggiungi il --arm64 flag per compilare il codice per ARM. CPUs

    cargo lambda build --release --arm64
  4. Prima di distribuire la funzione Rust, configura le credenziali sulla tua macchina. AWS

    aws configure

Implementazione del file binario di funzioni Rust con Cargo Lambda

Utilizza il sottocomando deploy per implementare il file binario compilato su Lambda. Questo comando crea un ruolo di esecuzione e quindi crea la funzione Lambda. Per specificare un ruolo di esecuzione esistente, utilizza il flag --iam-role.

cargo lambda deploy my-function

Distribuzione del binario della funzione Rust con il AWS CLI

Puoi anche distribuire il tuo file binario con. AWS CLI

  1. Per compilare il pacchetto di implementazione .zip, utilizza il sottocomando build.

    cargo lambda build --release --output-format zip
  2. Per implementare il pacchetto .zip su Lambda, eseguire il comando create-function.

    • Per --runtime, specificare provided.al2023. Questo è un runtime solo per il sistema operativo. I runtime solo per il sistema operativo vengono utilizzati per distribuire file binari compilati e runtime personalizzati su Lambda.

    • Per --role, specifica l'ARN del ruolo di esecuzione.

    aws lambda create-function \ --function-name my-function \ --runtime provided.al2023 \ --role arn:aws:iam::111122223333:role/lambda-role \ --handler rust.handler \ --zip-file fileb://target/lambda/my-function/bootstrap.zip

Distribuzione del binario della funzione Rust con la CLI AWS SAM

Puoi anche distribuire il tuo file binario con la AWS SAM CLI.

  1. Crea un AWS SAM modello con la definizione di risorse e proprietà. Per Runtime, specificare provided.al2023. Questo è un runtime solo per il sistema operativo. I runtime solo per il sistema operativo vengono utilizzati per distribuire file binari compilati e runtime personalizzati su Lambda.

    Per ulteriori informazioni sulla distribuzione delle funzioni Lambda AWS SAM utilizzando, AWS::Serverless::Functionconsulta la Guida per AWS Serverless Application Model gli sviluppatori.

    Esempio Definizione di risorse e proprietà SAM per un file binario Rust
    AWSTemplateFormatVersion: '2010-09-09' Transform: AWS::Serverless-2016-10-31 Description: SAM template for Rust binaries Resources: RustFunction: Type: AWS::Serverless::Function Properties: CodeUri: target/lambda/my-function/ Handler: rust.handler Runtime: provided.al2023 Outputs: RustFunction: Description: "Lambda Function ARN" Value: !GetAtt RustFunction.Arn
  2. Utilizza il sottocomando build per compilare la funzione.

    cargo lambda build --release
  3. Utilizza il comando sam deploy per implementare la funzione su Lambda.

    sam deploy --guided

Per ulteriori informazioni sulla creazione di funzioni Rust con la AWS SAM CLI, consulta Creazione di funzioni Rust Lambda con Cargo Lambda nella Developer Guide.AWS Serverless Application Model

Richiamo della funzione Rust con Cargo Lambda

Utilizza il sottocomando invoke per testare la tua funzione con un payload.

cargo lambda invoke --remote --data-ascii '{"command": "Hello world"}' my-function

Invocare la funzione Rust con il AWS CLI

Puoi anche usare il AWS CLI per richiamare la funzione.

aws lambda invoke --function-name my-function --cli-binary-format raw-in-base64-out --payload '{"command": "Hello world"}' /tmp/out.txt

L'cli-binary-formatopzione è obbligatoria se si utilizza la AWS CLI versione 2. Per rendere questa impostazione come predefinita, esegui aws configure set cli-binary-format raw-in-base64-out. Per ulteriori informazioni, consulta la pagina AWS CLI supported global command line options nella Guida per l'utente di AWS Command Line Interface versione 2.

Argomento successivo:

Registrazione

Argomento precedente:

Eventi HTTP
PrivacyCondizioni del sitoPreferenze cookie
© 2025, Amazon Web Services, Inc. o società affiliate. Tutti i diritti riservati.