

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

# Best practice di Neptune per l'utilizzo di openCypher e Bolt
<a name="best-practices-opencypher"></a>

È necessario seguire queste best practice per usare il linguaggio di query openCypher e il protocollo Bolt con Neptune. Per informazioni sull'utilizzo di openCypher in Neptune, consulta [Accesso al grafo di Neptune con openCypher](access-graph-opencypher.md).

**Topics**
+ [Creazione di una nuova connessione dopo il failover](#best-practices-opencypher-renew-connection)
+ [Gestione delle connessioni per applicazioni di lunga durata](#best-practices-opencypher-long-connections)
+ [Gestione della connessione per AWS Lambda](#best-practices-opencypher-lambda-connections)
+ [Preferire archi orientati a quelli bidirezionali nelle query](best-practices-opencypher-directed-edges.md)
+ [Neptune non supporta più query simultanee in una transazione](best-practices-opencypher-multiple-queries.md)
+ [Chiusura degli oggetti driver al termine dell'utilizzo](best-practices-opencypher-close-driver.md)
+ [Utilizzo di modalità di transazione esplicite per la lettura e la scrittura](best-practices-opencypher-use-explicit-txs.md)
+ [Logica di ripetizione dei tentativi per le eccezioni](best-practices-opencypher-retry-logic.md)
+ [Imposta più proprietà contemporaneamente utilizzando una singola clausola SET](best-practices-content-0.md)
+ [Utilizzare query parametrizzate](best-practices-content-2.md)
+ [Usa mappe appiattite anziché mappe annidate nella clausola UNWIND](best-practices-content-3.md)
+ [Posiziona nodi più restrittivi sul lato sinistro nelle espressioni VLP (Variable-Length Path)](best-practices-content-4.md)
+ [Evita controlli ridondanti delle etichette dei nodi utilizzando nomi di relazione granulari](best-practices-content-5.md)
+ [Specificate le etichette dei bordi ove possibile](best-practices-content-6.md)
+ [Evita di usare la clausola WITH quando possibile](best-practices-content-7.md)
+ [Posiziona filtri restrittivi il più presto possibile nella query](best-practices-content-8.md)
+ [Controlla esplicitamente se esistono delle proprietà](best-practices-content-9.md)
+ [Non utilizzate il percorso denominato (a meno che non sia richiesto)](best-practices-content-10.md)
+ [Evita COLLECT (DISTINCT ())](best-practices-content-11.md)
+ [Preferisci la funzione delle proprietà alla ricerca delle singole proprietà quando recuperi tutti i valori delle proprietà](best-practices-content-12.md)
+ [Esegui calcoli statici all'esterno della query](best-practices-content-13.md)
+ [Input in batch che utilizzano UNWIND anziché singole istruzioni](best-practices-content-14.md)
+ [Preferisci usare custom IDs per nodo/relazione](best-practices-content-15.md)
+ [Evita di eseguire calcoli \~id nella query](best-practices-content-16.md)
+ [Aggiornamento/unione di più nodi](best-practices-merge-multiple-nodes.md)

## Creazione di una nuova connessione dopo il failover
<a name="best-practices-opencypher-renew-connection"></a>

In caso di failover, il driver Bolt può continuare a connettersi all'istanza di scrittura precedente anziché alla nuova istanza attiva, poiché il nome DNS è stato risolto in un indirizzo IP specifico.

Per evitare questo scenario, chiudi e riconnetti l'oggetto `Driver` dopo ogni failover.

## Gestione delle connessioni per applicazioni di lunga durata
<a name="best-practices-opencypher-long-connections"></a>

Quando crei applicazioni di lunga durata, come quelle in esecuzione all'interno di container o su istanze Amazon EC2, crea un'istanza di un oggetto `Driver` una volta e poi riutilizza tale oggetto per tutta la durata dell'applicazione. L'oggetto `Driver` è thread-safe e l'overhead di inizializzazione è notevole.

## Gestione della connessione per AWS Lambda
<a name="best-practices-opencypher-lambda-connections"></a>

I driver Bolt non sono consigliati per l'uso all'interno AWS Lambda delle funzioni, a causa del sovraccarico di connessione e dei requisiti di gestione. Usa invece l'[endpoint HTTPS](access-graph-opencypher-queries.md).