Configurare le repliche in lettura
Le aziende possono usare le repliche di sola lettura dei database per scalare le prestazioni a livello globale. Le repliche sono utili quando un'organizzazione ha clienti distribuiti a livello globale e gli utenti possono provare ad accedere ai propri dati. Una volta configurate, possono anche gestire il ripristino di emergenza a livello di area geografica.
Si supponga che la propria azienda sia rinomata a livello internazionale nel settore della vendita di biciclette. Il CIO ha chiesto al reparto di migliorare la velocità di risposta del negozio online per gli utenti in tutto il mondo. È noto che un modo rapido e semplice per migliorare le prestazioni consiste nel posizionare le repliche di sola lettura dei database in ogni posizione geografica.
In questa unità, si noterà quanto sia semplice creare e gestire le repliche di sola lettura dei dati archiviati in un'istanza di Database di Azure per MySQL/PostgreSQL.
Come usare la replica in lettura
Si usa la replica in lettura per copiare dati da un'istanza di Database di Azure per MySQL/PostgreSQL (denominata master) a un massimo di cinque repliche. Usare la replica per suddividere il carico tra i server per carichi di lavoro con intensa attività di lettura. La replica è unidirezionale e ogni replica è di sola lettura. La replica viene eseguita in modo asincrono, pertanto si verifica un ritardo tra il momento in cui i dati vengono modificati nel master e il punto in cui vengono visualizzati in ogni replica.
Le repliche possono trovarsi in aree geografiche diverse rispetto al master. Per ridurre la latenza delle query, è possibile usare le repliche per inserire i dati vicino ai client che lo richiedono. La replica tra aree geografiche offre anche un meccanismo per gestire il ripristino di emergenza a livello di area geografica.
Nota
La replica tra aree geografiche non è disponibile nel livello di prestazioni di base.
Ogni replica è un'istanza di Database di Azure per MySQL/PostgreSQL a sé stante, ma è configurata come di sola lettura. Se la connessione al server master viene persa o il server master viene eliminato, ogni replica diventa un server di lettura/scrittura indipendente. In questo caso, le repliche non sono più sincronizzate tra loro, quindi i dati che contengono potrebbero iniziare a divergere.
Nota
Se si usa Database di Azure per MySQL, le repliche di lettura sono disponibili solo nei piani tariffari Per utilizzo generico e Con ottimizzazione per la memoria. Inoltre, le repliche in lettura non sono disponibili nei server flessibili di Database di Azure per PostgreSQL.
Creare repliche
Il modo più semplice per aggiungere repliche a un server è tramite la pagina Replica relativa al server nel portale di Azure. In questa pagina selezionare + Aggiungi replica.
Verrà richiesto di specificare un nome e un percorso per il server. A parte questo, gli altri dettagli per la replica, incluso il piano tariffario, vengono impostati in modo analogo a quelli usati dal master. Dopo la creazione della replica, è possibile modificare le impostazioni del server, inclusa la regolazione del piano tariffario. Tuttavia, assicurarsi che ogni replica disponga di risorse sufficienti per gestire il carico di lavoro associato alla ricezione e all'archiviazione dei dati replicati.
Nota
Se si usano i piani tariffari Per utilizzo generico o Con ottimizzazione per la memoria, è necessario abilitare anche il supporto per la replica. È possibile eseguire questa operazione nella pagina Replica selezionando Abilita supporto replica. Il server verrà riavviato prima di poter continuare.
Quando si aggiunge una replica, questa verrà visualizzata nella pagina Replica. A seconda delle dimensioni del master e della quantità di dati nei database, la distribuzione e la sincronizzazione di ogni replica possono richiedere una quantità di tempo significativa.
Per riconfigurare e ridimensionare una replica, selezionarla nella pagina Replica.
Se si preferisce usare l'interfaccia della riga di comando di Azure, creare le repliche con il comando az mysql/postgres server replica create
:
az postgres server replica create \
--name northwindreplica3 \
--resource-group northwindrg \
--source-server northwind101
Rimozione di una replica
Per rimuovere una replica, selezionare la replica nella pagina Replica e quindi Arresta replica. Il server di replica verrà scollegato dal master e verrà invece convertito in un server di lettura/scrittura. La replica non verrà eliminata e continueranno a essere addebitate le risorse utilizzate. Se è necessario eliminare la replica, usare invece il comando Elimina replica.
L'interfaccia della riga di comando di Azure fornisce il comando az mysql/postgres server replica stop
per arrestare la replica e convertire una replica in un server di lettura/scrittura. Si usa quindi il comando az mysql/postgres server delete
per eliminare la replica e liberare le risorse.