Creazione di funzioni.NET 7 Lambda con la compilazione AOT nativa - AWS Serverless Application Model

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

Creazione di funzioni.NET 7 Lambda con la compilazione AOT nativa

Crea e impacchetta le tue AWS Lambda funzioni.NET 7 con AWS Serverless Application Model (AWS SAM), utilizzando la compilazione Native Ahead-ofTime (AOT) per migliorare i tempi di avvio a freddo. AWS Lambda

Panoramica su AOT nativo.NET 7

Storicamente, le funzioni.NET Lambda hanno tempi di avvio a freddo che influiscono sull'esperienza utente, sulla latenza del sistema e sui costi di utilizzo delle applicazioni serverless. Con .NET 7, Microsoft aggiunge il supporto per la compilazione AOT nativa, che accelera le prestazioni compilando il codice.NET direttamente nel codice nativo della macchina e del sistema operativo, eliminando la compilazione Just-in-Time (JIT) in fase di esecuzione. Con la compilazione AOT nativa.NET 7, puoi migliorare i tempi di avvio a freddo delle tue funzioni Lambda. Per ulteriori informazioni su Native AOT for .NET 7, consulta Using Native AOT nel repository Dotnet. GitHub

Utilizzo AWS SAM con le funzioni Lambda di.NET 7

Effettua le seguenti operazioni per configurare le funzioni Lambda di.NET 7 con AWS Serverless Application Model ()AWS SAM:

  • Installa i prerequisiti sulla tua macchina di sviluppo.

  • Definisci le funzioni.NET 7 Lambda nel tuo AWS SAM modello.

  • Crea la tua applicazione con. AWS SAM CLI

Installa i prerequisiti

I prerequisiti obbligatori sono i seguenti:

  • CLI AWS SAM

  • La CLI.NET Core

  • Lo strumento globale.NET Core di Amazon.Lambda.Tools

  • Docker

Installa il AWS SAMCLI
  1. Per verificare se è già AWS SAM CLI installato, esegui quanto segue:

    sam --version
  2. Per installare AWS SAMCLI, consultaInstallazione del AWS SAMCLI.

  3. Per aggiornare una versione installata di AWS SAMCLI, vedereAggiornamento del AWS SAMCLI.

Installazione di.NET Core CLI
  1. Per scaricare e installare il.NET Core CLI, vedi Scaricare.NET dal sito Web di Microsoft.

  2. Per ulteriori informazioni su .NET Core CLI, consulta.NET Core CLI nella Developer Guide. AWS Lambda

Installa lo strumento globale Amazon.Lambda.Tools .NET Core
  1. Esegui il comando seguente:

    dotnet tool install -g Amazon.Lambda.Tools
  2. Se lo strumento è già stato installato, è possibile verificare di avere in uso la versione più recente con il comando seguente:

    dotnet tool update -g Amazon.Lambda.Tools
  3. Per ulteriori informazioni sullo strumento globale Amazon.Lambda.Tools .NET Core, consulta l'archivio Extensions AWSfor .NET CLI su. GitHub

Installazione di Docker

Definisci le funzioni.NET 7 Lambda nel tuo modello AWS SAM

Per definire una funzione.NET7 Lambda nel AWS SAM modello, procedi come segue:

  • Definite un runtime personalizzato impostando su. Runtime provided.al2 Definiamo un runtime personalizzato perché non è disponibile un'opzione di runtime .NET 7.

  • Aggiungi un Metadata oggetto alla tua AWS::Serverless::Function risorsa e specifica dotnet7 perBuildMethod.

Resources: HelloWorldFunction: Type: AWS::Serverless::Function Properties: CodeUri: function-source-folder Handler: app.handler Runtime: provided.al2 Architectures: - x86_64 Events: HelloWorld: Type: Api Properties: Path: /hello Method: get Metadata: BuildMethod: dotnet7
Nota

Per la Architectures proprietà, x86_64 è l'unica opzione supportata perché .NET 7 non può essere eseguito suarm64. Per ulteriori informazioni, consulta il GitHub problema Reconsidera l'ambiente di compilazione .NET 7.

Crea la tua applicazione con AWS SAMCLI

Dalla directory principale del progetto, esegui sam build per iniziare a creare l'applicazione. Se la PublishAot proprietà è stata definita nel file di progetto.NET 7, AWS SAM CLI verrà creata con la compilazione AOT nativa. Per ulteriori informazioni sulla PublishAot proprietà, consulta Native AOT Deployment nella documentazione .NET di Microsoft.

Per creare la tua funzione, AWS SAM CLI richiama la CLI.NET Core che utilizza lo strumento globale Amazon.Lambda.Tools .NET Core.

Nota

Durante la creazione, se un .sln file esiste nella stessa directory o nella directory principale del progetto, la directory contenente il file verrà montata nel contenitore. .sln Se non viene trovato un .sln file, viene montata solo la cartella del progetto. Pertanto, se state creando un'applicazione multiprogetto, assicuratevi che il .sln file sia posizionato correttamente.

Ulteriori informazioni

Per ulteriori informazioni sulla creazione di funzioni.NET 7 Lambda, consulta Creazione di applicazioni serverless su Lambda usando.NET 7.

Per un riferimento al sam build comando, vedere. sam build