Selezione e configurazione di un'architettura di set di istruzioni per la funzione Lambda - 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à.

Selezione e configurazione di un'architettura di set di istruzioni per la funzione Lambda

L'architettura del set di istruzioni di una funzione Lambda determina il tipo di processore del computer utilizzato da Lambda per eseguire la funzione. Lambda offre una scelta di architetture del set di istruzioni:

  • arm64 — ARM architettura a 64 bit, per il processore Graviton2 AWS .

  • x86_64: architettura x86 a 64 bit, per processori basati su x86.

Nota

L'architettura arm64 è disponibile nella maggior parte dei casi. Regioni AWS Per ulteriori informazioni, consultare AWS Lambda Prezzi. Nella tabella dei prezzi della memoria, scegli la scheda Arm Price, quindi apri l'elenco a discesa Region per vedere quali Regioni AWS supportano arm64 con Lambda.

Per un esempio di come creare una funzione con l'architettura arm64, vedi AWS Lambda Functions Powered by Graviton2 Processor. AWS

Vantaggi dell'utilizzo dell'architettura arm64

Le funzioni Lambda che utilizzano l'architettura arm64 (processore AWS Graviton2) possono ottenere prezzi e prestazioni significativamente migliori rispetto alla funzione equivalente in esecuzione sull'architettura x86_64. Prendi in considerazione l'utilizzo di arm64 per applicazioni ad uso intensivo di calcolo come computing ad alte prestazioni, codifica video e carichi di lavoro di simulazione.

Graviton2 CPU utilizza il core Neoverse N1 e supporta Armv8.2 (incluse le estensioni crittografiche) oltre a diverse altre estensioni architettoniche. CRC

Graviton2 riduce il tempo di lettura della memoria fornendo una cache L2 più grande per vCPU, che migliora le prestazioni di latenza dei backend web e mobili, dei microservizi e dei sistemi di elaborazione dati. Graviton2 offre anche prestazioni di crittografia migliorate e supporta set di istruzioni che migliorano la latenza dell'inferenza basata sull'apprendimento automatico. CPU

Per ulteriori informazioni su AWS Graviton2, vedere Graviton Processor.AWS

Requisiti per la migrazione all'architettura arm64

Quando selezioni una funzione Lambda per migrare all'architettura arm64, per garantire una migrazione fluida assicurati che la tua funzione soddisfi i seguenti requisiti:

  • Il pacchetto di implementazione contiene solo componenti open source e codice sorgente sotto il tuo controllo, in modo da poter apportare tutti gli aggiornamenti necessari per la migrazione.

  • Se il codice delle funzione include dipendenze di terze parti, ogni libreria o pacchetto fornisce una versione arm64.

Compatibilità del codice della funzione con l'architettura arm64

Il codice della funzione Lambda deve essere compatibile con l'architettura del set di istruzioni della funzione. Prima di migrare una funzione all'architettura arm64, tieni presente le seguenti osservazioni sul codice della funzione corrente:

  • Se hai aggiunto il codice della funzione utilizzando l'editor di codice incorporato, probabilmente è possibile eseguire il codice su entrambe le architetture senza modifiche.

  • Se il codice della funzione è stato caricato, è necessario caricare un nuovo codice compatibile con l'architettura specifica.

  • Se la funzione utilizza livelli, è necessario controllare ogni livello per garantire che sia compatibile con la nuova architettura. Se un livello non è compatibile, modifica la funzione per sostituire la versione del livello corrente con una versione del livello compatibile.

  • Se la tua funzione utilizza estensioni Lambda, è necessario controllare ciascuna estensione per assicurarsi che sia compatibile con la nuova architettura.

  • Se la funzione usa un tipo di pacchetto di distribuzione dell'immagine del container, è necessario creare una nuova immagine del container compatibile con l'architettura della funzione.

Come eseguire la migrazione all'architettura arm64

Per migrare una funzione Lambda all'architettura arm64, ti consigliamo di seguire questi passaggi:

  1. Crea l'elenco di dipendenze per l'applicazione o il carico di lavoro. Le dipendenze comuni includono:

    • Tutte le librerie e i pacchetti utilizzati dalla funzione.

    • Gli strumenti utilizzati per creare, distribuire e testare la funzione, come compilatori, suite di test, pipeline di integrazione continua e distribuzione continua (CI/CD), strumenti di provisioning e script.

    • Le estensioni Lambda e gli strumenti di terza parte utilizzati per monitorare la funzione in produzione.

  2. Per ciascuna delle dipendenze, controlla la versione e verifica se sono disponibili versioni arm64.

  3. Crea un ambiente per eseguire la migrazione dell'applicazione.

  4. Esegui il bootstrap dell'applicazione.

  5. Test e debugging dell'applicazione.

  6. Testa le prestazioni della funzione arm64. Confronta le prestazioni con la versione x86_64.

  7. Aggiorna la pipeline dell'infrastruttura per supportare le funzioni arm64 Lambda.

  8. Simula l'implementazione per la produzione.

    Ad esempio, è possibile usare la configurazione del routing dell'alias per dividere il traffico tra le versioni x86 e arm64 della funzione e confrontare le prestazioni e la latenza.

Per ulteriori informazioni su come creare un ambiente di codice per l'architettura arm64, incluse informazioni specifiche del linguaggio per Java, Go,. NETe Python, consultate il repository Guida introduttiva a AWS GitHub Graviton.

Configurazione dell'architettura del set di istruzioni

Puoi configurare l'architettura del set di istruzioni per funzioni Lambda nuove ed esistenti utilizzando la console Lambda, AWS SDKs, AWS Command Line Interface ()AWS CLI o. AWS CloudFormation Completa questa procedura per modificare l'architettura del set di istruzioni per una funzione Lambda esistente dalla console.

  1. Aprire la pagina Funzioni della console Lambda.

  2. Scegli il nome della funzione per la quale desideri configurare l'architettura del set di istruzioni.

  3. Nella scheda Codice principale, per la sezione Impostazioni di runtime, scegli Modifica.

  4. In Architettura, scegli l'architettura del set di istruzioni da utilizzare per la funzione.

  5. Seleziona Salva.