

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

# Endpoint della funzione Web Lambda
<a name="web-functions-endpoints"></a>

Un endpoint è una risorsa figlia di una funzione Web che fornisce un punto di ingresso di rete per il traffico HTTP. Ogni endpoint include un nome di dominio univoco con TLS e un tipo di autenticazione. Dispone inoltre di impostazioni per l'ambito geografico, la scalabilità, la limitazione e il routing del traffico. Una funzione Web può avere fino a 10 endpoint, ciascuno con una configurazione indipendente.

Le seguenti sezioni spiegano i tipi di endpoint, i nomi di dominio, l'autenticazione e la replica. Per informazioni sulle impostazioni di ridimensionamento e limitazione, consulta. [Comportamento di scalabilità per Lambda Web Functions](web-functions-scaling.md) Per informazioni sulle modalità di distribuzione automatica e sul routing del traffico, vedere. [Modelli di implementazione](web-functions-deployment.md)

## Tipi di endpoint
<a name="web-functions-endpoint-types"></a>

Il tipo di endpoint determina in che modo Lambda distribuisce la tua funzione Regioni AWS Web e come viene indirizzato il traffico verso di essa. Il tipo di endpoint viene scelto al momento della creazione dell'endpoint. Il tipo di endpoint non può essere modificato dopo la creazione.

**HomeRegion**  
Esegue la tua funzione Web in un'unica Regione AWS soluzione. Lambda gestisce le richieste dalla regione in cui hai creato l'endpoint. Lambda alloca un unico nome di dominio regionale per l'endpoint.  
**HomeRegion**Utilizzalo per applicazioni che non richiedono la disponibilità in più regioni o quando desideri iniziare con la configurazione più semplice.

**MultiRegion**  
Esegue la funzione Web in più Regioni AWS modi. Le regioni di destinazione vengono specificate quando si crea l'endpoint. Lambda aggiunge automaticamente la regione di origine. L'endpoint deve includere almeno un'altra regione. Per indirizzare il traffico verso una revisione, si impostano i pesi di revisione dell'endpoint. Lambda replica quindi automaticamente il codice e la configurazione in tutte le regioni specificate. Lambda alloca un unico nome di dominio globale. Utilizza il routing basato sulla latenza per inviare ogni richiesta alla regione che in genere fornisce la latenza più bassa per il chiamante. Lambda non esegue il failover basato sull'integrità.  
È possibile gestire la funzione Web da un'unica area geografica. Lambda gestisce la replica nelle altre regioni. I client si connettono a un nome di dominio.  
**MultiRegion**Utilizzalo per applicazioni globali che richiedono una bassa latenza per gli utenti in più aree geografiche.

**PerRegion**  
Esegue la funzione Web in più lingue Regioni AWS, con un nome di dominio regionale separato in ciascuna regione. Le regioni di destinazione vengono specificate quando si crea l'endpoint. Lambda aggiunge automaticamente la regione di origine. L'endpoint deve includere almeno un'altra regione. Lambda configura automaticamente l'endpoint in ogni regione specificata. Ogni regione ha il proprio nome di dominio indipendente.  
Al contrario **MultiRegion**, Lambda non esegue il routing automatico basato sulla latenza. Puoi gestire il modo in cui il traffico raggiunge ogni dominio regionale, ad esempio con la tua politica di routing o una distribuzione della Route 53. CloudFront  
**PerRegion**Utilizzatelo quando è necessario controllare le decisioni di routing per regione, ad esempio per implementare restrizioni geografiche, logica di failover personalizzata o Region-specific politiche sul traffico.

Le regioni e il tipo di endpoint non possono essere aggiornati dopo la creazione. Per modificarli, crea un nuovo endpoint con la configurazione desiderata, migra il traffico verso il nome di dominio del nuovo endpoint, quindi elimina il vecchio endpoint.

Per dettagli su come Lambda replica la tua funzione Web tra regioni e indirizza il traffico, consulta. [Multi-Region dispiegamento](web-functions-endpoint-replication.md)

## Domain name (Nome dominio)
<a name="web-functions-endpoint-domain"></a>

Lambda assegna un nome di dominio univoco a ciascun endpoint al momento della creazione. I client inviano richieste HTTPS a questo dominio per richiamare la tua funzione Web. Il dominio supporta HTTPS e Lambda gestisce il certificato TLS per il dominio. Non sei tu a creare, rinnovare o gestire i certificati.

Il formato del nome di dominio dipende dal tipo di endpoint:
+ **HomeRegion**e **PerRegion**— Ogni regione ha un dominio nel formato:

  ```
  {{domain-id}}.{{shard-id}}.lambda-web.{{region}}.on.aws
  ```

  Ad esempio: `bcdfghjklmnpqrst.b7t.lambda-web.ap-northeast-3.on.aws`
+ **MultiRegion**— Un singolo dominio globale nel formato:

  ```
  {{domain-id}}.lambda-web.global.on.aws
  ```

  Ad esempio: `bcdfghjklmn.lambda-web.global.on.aws`

  Lambda utilizza il routing basato sulla latenza per selezionare una regione per ogni client.

**Puoi recuperare il nome di dominio dalla `GetWebFunctionEndpoint` risposta o dalla console Lambda dopo che l'endpoint ha raggiunto lo stato Attivo.**

**Nota**  
Gli endpoint Web Function non supportano l'associazione diretta di un nome di dominio personalizzato. I client che chiamano il dominio dell'endpoint devono utilizzare il Lambda-allocated nome di dominio. Per servire il traffico sul tuo dominio, metti una CloudFront distribuzione Amazon davanti all'endpoint e usa il nome di Lambda-allocated dominio come origine.

## Tipo di autenticazione
<a name="web-functions-endpoint-auth"></a>

L'`authType`impostazione controlla se Lambda autentica le richieste HTTP in entrata prima di passarle all'applicazione. Puoi aggiornare questa impostazione su un endpoint esistente.

**ApplicationManaged**  
Lambda non autentica le richieste in arrivo. Tutte le richieste HTTP vengono inoltrate direttamente all'applicazione. L'utente è responsabile della gestione dell'autenticazione nel codice dell'applicazione.

**IamAuth**  
Lambda convalida la firma di ogni richiesta. Firma le richieste con AWS Signature Version 4 (SigV4) per **PerRegion**domini **HomeRegion**e con Signature Version 4a (SigV4a) per un dominio globale. **MultiRegion** Solo i chiamanti con l'autorizzazione possono richiamare l'endpoint. `lambda:InvokeWebFunctionEndpoint`

Per tutti i dettagli sull'autenticazione, incluse le politiche di CloudFront integrazione e basate sulle risorse, consulta. [Controllo dell'accesso agli endpoint Lambda Web Function](web-functions-endpoint-access-control.md)

## Auto-deployment modalità
<a name="web-functions-endpoint-auto-deploy"></a>

L'`autoDeploymentMode`impostazione controlla se Lambda indirizza automaticamente il traffico verso nuove revisioni ogni volta che distribuisci l'applicazione. Puoi aggiornare questa impostazione su un endpoint esistente.

Se ometti `autoDeploymentMode` in una richiesta API, l'impostazione predefinita è. `Disabled` La console Lambda e l'uso dei `aws lambda-web deploy` comandi `LatestRevision` per i nuovi `HomeRegion` endpoint. `LatestRevision`è supportato solo per gli `HomeRegion` endpoint, quindi gli endpoint lo `MultiRegion` utilizzano `PerRegion` sempre. `Disabled` Quando si utilizza`Disabled`, specifica il totale `revisionWeights` di 100.

**LatestRevision**  
Lambda indirizza automaticamente il 100% del traffico alla revisione attiva più recente. Utilizzalo per ambienti di sviluppo e staging. LatestRevision la modalità è disponibile solo per gli **HomeRegion**endpoint.

**Disabilitato**  
Lambda non modifica il routing del traffico quando si crea una nuova revisione. Il routing viene controllato manualmente con i pesi di revisione. Utilizzare per ambienti di produzione. La modalità disabilitata è disponibile per tutti i tipi di endpoint. **MultiRegion**e gli **PerRegion**endpoint utilizzano sempre la modalità Disabilitata.

Per i dettagli sui modelli di distribuzione, il rollback e il comportamento di cambio di modalità, vedere. [Modelli di implementazione](web-functions-deployment.md)

## Ridimensionamento e limitazione
<a name="web-functions-endpoint-scaling-summary"></a>

Ogni endpoint dispone di impostazioni di scalabilità e limitazione che controllano la capacità. Puoi aggiornare queste impostazioni su un endpoint esistente con. `update-web-function-endpoint` Omettete `--scaling-config` o `--throttle-config` mantenete il valore corrente oppure passate un oggetto vuoto (`'{}'`) per cancellare un valore impostato in precedenza. Per rimuovere un limite di velocità, passate un `--throttle-config` oggetto vuoto. Un valore `rateLimit` pari a 0 blocca tutto il traffico.
+ **`maxEnvironments`**: opzionale. Il numero massimo di ambienti di esecuzione per l'endpoint in ogni regione. Se non è impostato, l'endpoint si ridimensiona in base alle esigenze entro le quote dell'account.
+ **`rateLimit`**— Numero massimo di richieste al secondo. Questa impostazione è facoltativa. Se non è impostato, l'endpoint è limitato dalla quota di frequenza delle richieste per endpoint di 10.000 RPS e dalle quote dell'account. Il limite di velocità si applica all'endpoint nel suo insieme, in tutti gli ambienti di esecuzione. Non è un limite per ambiente. Per tutti **MultiRegion**gli **PerRegion**endpoint, ogni regione applica il limite in modo indipendente. Le richieste in eccesso ricevono HTTP 429.

Per informazioni dettagliate su come queste impostazioni interagiscono con la concorrenza a livello di revisione e per indicazioni sulla scelta dei valori, consulta. [Comportamento di scalabilità per Lambda Web Functions](web-functions-scaling.md)

## Creazione e gestione degli endpoint
<a name="web-functions-endpoint-manage"></a>

### Creazione di un endpoint
<a name="web-functions-endpoint-create"></a>

**Per creare un HomeRegion endpoint (AWS CLI)**
+ 

  ```
  aws lambda-web create-web-function-endpoint \
      --function-name {{my-web-app}} \
      --endpoint-name {{my-endpoint}} \
      --endpoint-type HomeRegion \
      --auth-type ApplicationManaged \
      --auto-deployment-mode LatestRevision
  ```

**Per creare un MultiRegion endpoint (AWS CLI)**
+ 

  ```
  aws lambda-web create-web-function-endpoint \
      --function-name {{my-web-app}} \
      --endpoint-name {{my-global-endpoint}} \
      --endpoint-type MultiRegion \
      --regions {{us-east-1}} {{eu-west-1}} {{ap-northeast-1}} \
      --auth-type ApplicationManaged \
      --revision-weights '[{"revisionId": "{{rev-a1b2c}}", "weight": 100}]'
  ```

  MultiRegion e gli PerRegion endpoint richiedono pesi di revisione, poiché la **LatestRevision**distribuzione automatica non è disponibile per loro. Per ulteriori informazioni, consulta [Modelli di implementazione](web-functions-deployment.md).

### Elenco di endpoint
<a name="web-functions-endpoint-list"></a>

```
aws lambda-web list-web-function-endpoints \
    --function-name {{my-web-app}}
```

La risposta include il nome, il tipo, il nome di dominio, lo stato e la configurazione di ciascun endpoint.

### Ottenere i dettagli dell'endpoint
<a name="web-functions-endpoint-get"></a>

```
aws lambda-web get-web-function-endpoint \
    --function-name {{my-web-app}} \
    --endpoint-name {{my-endpoint}}
```

La risposta include il nome di dominio, lo stato, il tipo di autenticazione, la modalità di distribuzione automatica, le impostazioni di ridimensionamento, i pesi di revisione e (per ed `PerRegion` endpoint) lo stato `MultiRegion` e lo stato di aggiornamento di ciascuna regione nel campo. `regionalEndpoints`

### Aggiornamento di un endpoint
<a name="web-functions-endpoint-update"></a>

È possibile aggiornare le seguenti proprietà su un endpoint esistente:
+ `description`
+ `authType`
+ `autoDeploymentMode`
+ `revisionWeights`
+ `scalingConfig`
+ `throttleConfig`

*Non è possibile* aggiornare le seguenti proprietà. Per modificarle, crea un nuovo endpoint con la configurazione desiderata, migra il traffico verso il nome di dominio del nuovo endpoint e quindi elimina il vecchio endpoint.
+ `endpointType` (HomeRegion, MultiRegion, PerRegion)
+ `regions`(le regioni di destinazione dell'endpoint)

### Eliminazione di un endpoint
<a name="web-functions-endpoint-delete"></a>

```
aws lambda-web delete-web-function-endpoint \
    --function-name {{my-web-app}} \
    --endpoint-name {{my-endpoint}}
```

Quando si elimina un endpoint, questo entra nello stato **Eliminazione**. Lambda interrompe l'instradamento di nuove richieste all'endpoint e ritira il relativo nome di dominio. Per un `PerRegion` endpoint, Lambda ritira il nome di dominio in ogni regione. Lambda non assegna mai i nomi di dominio di un endpoint eliminato a un altro endpoint in nessun account. Lambda scarica le richieste in volo. Consente il completamento delle richieste già in corso e rifiuta le nuove richieste ai nomi di dominio dell'endpoint. Per `MultiRegion` gli `PerRegion` endpoint, Lambda rimuove l'endpoint da tutte le regioni. Una volta completata l'eliminazione, Lambda rimuove definitivamente l'endpoint.

L'eliminazione di un endpoint non elimina la funzione Web o le relative revisioni. Le revisioni rimangono disponibili per l'uso da parte di altri endpoint.