

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

# Limitazione della ricerca e della scrittura
<a name="Durability.SearchThrottling"></a>

Per mantenere prestazioni e durabilità dei dati ottimali, ElastiCache in **modalità durevole** implementa la limitazione della scrittura sul traffico di ricerca quando necessario. La limitazione aiuta a garantire che i meccanismi di backup automatici funzionino in modo efficace senza subire ritardi durante i periodi di elevata attività di scrittura. Riducendo temporaneamente la velocità effettiva di scrittura, il sistema preserva l'integrità del registro delle Multi-AZ transazioni, essenziale per il ripristino e il riavvio rapidi del database.

## Ambito di limitazione
<a name="Durability.SearchThrottling.Scope"></a>

Vengono limitati solo i comandi di scrittura destinati a chiavi che appartengono a un indice di ricerca. **Le scritture su chiavi non indicizzate e tutti i comandi di lettura non sono interessati.**

I seguenti comandi sono soggetti a limitazione quando hanno come target chiavi indicizzate:


**Comandi soggetti alla limitazione della ricerca e della scrittura**  

| Categoria | Comandi | 
| --- | --- | 
| Hash | HSET, HSETNX, HMSET, HINCRBY, HINCRBYFLOAT, HDEL | 
| JSON | JSON.SET, JSON.DEL, JSON.NUMINCRBY, JSON.NUMMULTBY, JSON.STRAPPEND, JSON.ARRAPPEND, JSON.ARRINSERT, JSON.ARRPOP, JSON.ARRTRIM, JSON.TOGGLE, JSON.CLEAR, JSON.MERGE | 
| Generico | DEL, UNLINK, RENAME, RENAMENX, COPY, RESTORE | 

## Cosa sperimentano i clienti
<a name="Durability.SearchThrottling.ClientExperience"></a>

I comandi limitati vengono **ritardati,** non rifiutati. Le scritture interessate richiedono più tempo per essere completate, ma hanno comunque esito positivo. Al client non viene restituito alcun errore.

Puoi osservare l'impatto attraverso le seguenti CloudWatch metriche di Amazon:
+ `SuccessfulWriteRequestLatency`e `SearchBasedSetCmdsLatency` — Riflettono l'aumento della latenza sulle scritture interessate.
+ `SearchWriteThrottleActive``SearchWriteThrottledClientsCount`, e `SearchWriteThrottleEvents` — Indicate se il throttling è attivo e in che misura. Per informazioni dettagliate, vedi [Monitoraggio](#Durability.SearchThrottling.Monitoring).

## Quando si attiva la limitazione
<a name="Durability.SearchThrottling.Activation"></a>

Il sistema monitora l'utilizzo della CPU dei thread di scrittura del modulo di ricerca in una finestra continua di 2 ore. Il throttling si attiva quando l'utilizzo medio della CPU durante quella finestra supera il 50% e regola la velocità di scrittura consentita per riportare l'utilizzo medio al 50%.

Poiché la metrica viene calcolata in media su una finestra di 2 ore, brevi periodi di utilizzo elevato della CPU non determinano di per sé il throttling, purché siano compensati da un minore utilizzo all'interno della stessa finestra.

Per evitare un eccesso di velocità, il sistema valuta anche l'utilizzo corrente della CPU in tempo reale. Se l'utilizzo attuale della CPU è già pari o inferiore al 50%, il sistema mantiene costante la velocità di scrittura anziché ridurla ulteriormente, anche se la media di 2 ore rimane al di sopra della soglia. Ciò garantisce che la capacità di scrittura non scenda mai al di sotto del 50% del normale throughput.

## Quando il throttling si disattiva
<a name="Durability.SearchThrottling.Deactivation"></a>

Quando l'utilizzo medio della CPU su 2 ore scende al di sotto del 50%, il sistema aumenta gradualmente la velocità di scrittura consentita fino al ripristino della velocità effettiva completa e alla disattivazione del throttling.

## Monitoraggio
<a name="Durability.SearchThrottling.Monitoring"></a>

Le seguenti CloudWatch metriche di Amazon sono disponibili per il monitoraggio della limitazione della velocità di ricerca e scrittura:


**Metriche di limitazione della velocità di ricerca e scrittura CloudWatch**  

| Metrica | Description | Unità | 
| --- | --- | --- | 
| SearchWriteThrottleActive | Indica se la limitazione è attualmente attiva. 1= attivo, 0 = inattivo. | Booleano | 
| SearchWriteThrottledClientsCount | Il numero di connessioni client attualmente limitate. | Conteggio | 
| SearchWriteThrottleEvents | Il numero di eventi di accelerazione entro l'intervallo di segnalazione. | Conteggio | 
| SearchWriteCPUUtilization | Utilizzo attuale della CPU dei thread di Search Writer. | Percentuale | 

## Best practice
<a name="Durability.SearchThrottling.BestPractices"></a>
+ **Monitoraggio`SearchWriteCPUUtilization`: monitora** l'utilizzo della CPU in fase di ricerca e scrittura per comprendere i modelli di carico di lavoro e anticipare quando potresti avvicinarti alla soglia di limitazione.
+ **Monitoraggio`SearchWriteThrottleActive`: monitora** se il throttling è attivo in modo da poter indagare e rispondere tempestivamente.
+ **Pianifica l'ingestione prolungata nell'arco di 2 ore: il sistema utilizza una media continua di 2 ore, per cui brevi periodi di attività di scrittura elevati sono pienamente supportati, a patto che siano compensati da un minore utilizzo all'interno della stessa finestra**.
+ **Scala il tuo cluster se osservi un throttling prolungato o frequente**: se il carico di lavoro supera costantemente la soglia e la limitazione influisce sui requisiti di latenza dell'applicazione, prendi in considerazione la scalabilità per aggiungere capacità.