Creazione di funzioni Lambda .NET 7 con 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 Lambda .NET 7 con compilazione AOT nativa

Crea e impacchetta le tueAWS Lambda funzioni .NET 7 conAWS Serverless Application Model (AWS SAM), utilizzando la compilazione Native Ahead-of-Time (AOT) per migliorare i tempi diAWS Lambda avvio a freddo.

Panoramica di .NET 7 Native AOT

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 nativa AOT, 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, vedere Uso di AOT nativo nel GitHub repository Dotnet.

UtilizzoAWS SAM con le funzioni Lambda di .NET 7

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

  • Installa i prerequisiti sulla tua macchina di sviluppo.

  • Definisci le funzioni Lambda .NET 7 nel tuoAWS SAM modello.

  • Crea la tua applicazione con laAWS SAM CLI.

Prerequisiti di installazione

Sono richiesti i seguenti prerequisiti:

  • LaAWS SAM CLI

  • NET CLI .NET NET NET NET NET NET NET

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

  • Docker

Installazione diAWS SAM CLI
  1. Per verificare se hai già installato laAWS SAM CLI, esegui quanto segue:

    sam --version
  2. Per installare laAWS SAM CLI, vedereInstallazione dell'interfaccia a riga di comando AWS SAM.

  3. Per aggiornare una versione installata dellaAWS SAM CLI, vedereAggiornamento dellaAWS SAM CLI.

Installa CLI .NET NET NET NET NET NET NET NET
  1. Per scaricare e installare l'interfaccia CLI .NET NET NET NET su .NET NET dal sito Web di Microsoft.

  2. Per ulteriori informazioni sulla CLI .NET Core, consulta .NET Core CLI nella Guida per gliAWS Lambda sviluppatori.

Installa lo strumento globale .NET Amazon.Lambda.Tools
  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 di Amazon.Lambda.Tools. NET Core Global Tool, vedere le AWSestensioni per il repository CLI .NET su GitHub.

Installazione di Docker

Definisci le funzioni Lambda .NET 7 nel tuoAWS SAM modello

Per definire una funzione Lambda .NET7 nelAWS SAM modello, effettuate le seguenti operazioni:

  • Definisci un runtime personalizzato impostandoRuntime suprovided.al2. Definiamo un runtime personalizzato perché non è disponibile un'opzione di runtime .NET 7.

  • Aggiungi unMetadata oggetto alla tuaAWS::Serverless::Function risorsa e specificadotnet7 per ilBuildMethod.

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 laArchitectures proprietà,x86_64 è l'unica opzione supportata perché .NET 7 non può essere eseguito suarm64. Per ulteriori informazioni, consulta il GitHub problema relativo all'ambiente di compilazione Reconsiderare .NET 7.

Crea la tua applicazione con laAWS SAM CLI

Dalla directory principale del tuo progetto,sam build esegui per iniziare a creare la tua applicazione. Se laPublishAot proprietà è stata definita nel file di progetto .NET 7, laAWS SAM CLI verrà creata con la compilazione AOT nativa. Per ulteriori informazioni sullaPublishAot proprietà, vedere Native AOT Deployment nella documentazione .NET di Microsoft.

Per compilarla, laAWS SAM CLI richiama lo strumento globale .NET Amazon.Lambda.Tools.

Nota

Durante la creazione, se esiste un.sln file nella stessa directory o nella directory principale del progetto, la directory contenente il.sln file verrà montata nel contenitore. 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 localizzato nelle proprietà.

Ulteriori informazioni

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

Per un riferimento alsam build comando, vederestessa costruzione.