

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

# Aggiungere Auto Discovery alla libreria client Memcached
<a name="AutoDiscovery.AddingToYourClientLibrary"></a>

Le informazioni di configurazione per Auto Discovery sono archiviate in modo ridondante in ogni nodo del cluster Memcached. Le applicazioni client possono eseguire la query di qualsiasi nodo di cache e ottenere le informazioni di configurazione per tutti i nodi nel cluster.

Il modo utilizzato dall'applicazione dipende dalla versione del motore della cache:
+ Se la versione del motore della cache è **1.4.14 o successive**, utilizza il comando `config`.
+ Se la versione del motore della cache è **precedente alla 1.4.14**, utilizza il comando `get AmazonElastiCache:cluster`.

I risultati di questi due comandi sono identici e vengono descritti nella sezione [Formato di output](#AutoDiscovery.AddingToYourClientLibrary.OutputFormat) sottostante.

## Motore di cache versione 1.4.14 o successiva
<a name="AutoDiscovery.AddingToYourClientLibrary.1-4-14-plus"></a>

Per versioni del motore della cache 1.4.14 o successive, utilizza il comando `config`. Questo comando è stato aggiunto ai protocolli Memcached ASCII e binari da ElastiCache, ed è implementato nel Cluster Client. ElastiCache Se desideri utilizzare Individuazione automatica con un'altra libreria client, allora sarà necessario espandere tale libreria per supportare il comando `config`.

**Nota**  
La documentazione seguente è relativa al protocollo ASCII; tuttavia, il comando `config` supporta ASCII e binario. Se desideri aggiungere il supporto Auto Discovery utilizzando il protocollo binario, fai riferimento al [codice sorgente del Cluster Client](https://github.com/amazonwebservices/aws-elasticache-cluster-client-memcached-for-java/tree/master/src/main/java/net/spy/memcached/protocol/binary). ElastiCache 

**Sintassi**

`config [sub-command] [key]`

### Opzioni
<a name="AutoDiscovery.AddingToYourClientLibrary.1-4-14-plus.Options"></a>


| Nome | Description | Richiesto | 
| --- | --- | --- | 
| sub-command |  Il sottocomando utilizzando per interagire con un nodo di cache. Per Individuazione automatica, questo sottocomando è `get`.  | Sì | 
| key |  La chiave sotto cui viene archiviata la configurazione cluster. Per Individuazione automatica, questa chiave è denominata `cluster`.  | Sì | 

Per ottenere le informazioni di configurazione del cluster, utilizza il seguente comando: 

```
config get cluster
```

## Motore di cache versione 1.4.14 o precedente
<a name="AutoDiscovery.AddingToYourClientLibrary.pre-1-4-14"></a>

Per ottenere le informazioni di configurazione del cluster, utilizza il seguente comando: 

```
get AmazonElastiCache:cluster
```

**Nota**  
Non manomettere la chiave «:clusterAmazonElastiCache», poiché è qui che risiedono le informazioni di configurazione del cluster. Se si sovrascrive questa chiave, è possibile che il client venga configurato in modo errato per un breve periodo di tempo (non più di 15 secondi) prima di aggiornare ElastiCache automaticamente e correttamente le informazioni di configurazione.

## Formato di output
<a name="AutoDiscovery.AddingToYourClientLibrary.OutputFormat"></a>

A prescindere che utilizzi `config get cluster` o `get AmazonElastiCache:cluster`, la risposta è costituita sempre da due righe:
+ Il numero di versione delle informazioni di configurazione. Ogni volta che un nodo viene aggiunto o rimosso dal cluster, il numero di versione aumenta di uno. 
+ Un elenco di nodi di cache. Ogni nodo nell'elenco è rappresentato da un gruppo *hostname\$1ip-address\$1port* e ogni nodo è delimitato da uno spazio. 

Alla fine di ciascuna riga vengono visualizzati un carattere di ritorno a capo e un carattere di avanzamento riga (CR \$1 LF). La riga di dati contiene un carattere di avanzamento riga (LF) alla fine, cui viene aggiunto CR \$1 LF. La riga di versione config è terminata da LF senza CR. 

Un cluster contenente tre nodi sarebbe rappresentato come segue:

```
configversion\n
hostname|ip-address|port hostname|ip-address|port hostname|ip-address|port\n\r\n
```

Ogni nodo viene mostrato con il CNAME e l'indirizzo IP privato. Il CNAME è sempre presente; se l'indirizzo IP privato non è disponibile, non verrà visualizzato; tuttavia, i caratteri pipe "`|`" verranno ancora stampati.

**Example**  
Di seguito è riportato un esempio del payload restituito quando si esegue la query delle informazioni di configurazione:  

```
CONFIG cluster 0 136\r\n
12\n
myCluster.pc4ldq.0001.use1.cache.amazonaws.com|10.82.235.120|11211 myCluster.pc4ldq.0002.use1.cache.amazonaws.com|10.80.249.27|11211\n\r\n 
END\r\n
```

**Nota**  
La seconda riga indica che le informazioni di configurazione sono state modificate dodici volte finora.
Nella terza riga, l'elenco dei nodi è in ordine alfabetico per nome host. Questo ordinamento deve essere in una sequenza diversa da quella attualmente in uso nell'applicazione client.