Causa
Il tuo archivio Adobe Commerce sull'infrastruttura cloud ha un throughput elevato o è lento per SELECT
query MySQL.
Soluzione
https://console.adobecommerce.com/<owner-user-name>/<project-ID>/<environment-name>
. Fai clic su SSH. Se sono presenti più di tre nodi, l’architettura è in scala. Se abiliti Redis Slave Reads su architettura scalata, il cliente riceverà errori quando le connessioni Redis non sono in grado di connettersi. Questo ha a che fare con il modo in cui i cluster sono configurati per elaborare le connessioni Redis. Gli schiavi Redis sono ancora attivi ma non verranno utilizzati per Redis Reads. Per l’architettura scalata si consiglia di utilizzare Adobe Commerce 2.3.5 o versione successiva e implementare la nuova configurazione back-end Redis e implementare il caching L2 per Redis.Se si verificano queste due indicazioni, l'abilitazione delle connessioni SLAVE
per il database MySQL e Redis può aiutare a distribuire il carico tra nodi diversi.
Adobe Commerce può leggere più database o Redis in modo asincrono. Aggiornamento del file .magento.env.yaml
impostando su true
i valori MYSQL_USE_SLAVE_CONNECTION
e REDIS_USE_SLAVE_CONNECTION
per utilizzare una connessione di sola lettura al database per ricevere traffico di sola lettura su un nodo non principale. Ciò migliora le prestazioni tramite il bilanciamento del carico, in quanto solo un nodo deve gestire il traffico di lettura-scrittura. Impostare su false
per rimuovere qualsiasi array di connessione di sola lettura esistente dal file env.php
.
Passaggi
-
Modifica il file
.magento.env.yaml
e aggiungi il seguente contenuto:Ulteriori dettagli sono disponibili in Distribuire variabili in DevDocs.
-
Apporta le modifiche e le invia in push.
-
Il push delle modifiche avvierà un nuovo processo di distribuzione. Una volta completata la distribuzione, l’istanza di Adobe Commerce sull’infrastruttura cloud ora deve essere configurata per l’utilizzo di connessioni slave.
Domande comuni
Di seguito sono riportate le domande comuni che potresti porre quando prendi in considerazione l’utilizzo della funzionalità Connessioni slave per l’archivio dell’infrastruttura cloud di Adobe Commerce.
-
Esistono problemi noti o limitazioni all’utilizzo delle connessioni slave? Non sono stati rilevati problemi durante l'utilizzo delle connessioni slave. Assicurati di utilizzare il pacchetto di strumenti ece aggiornato più di recente. Le istruzioni sono disponibili qui in come aggiornare il pacchetto ece-tools.
-
Esiste una latenza aggiuntiva con l’utilizzo delle connessioni slave? Sì, la latenza cross-AZ (cross-Availability Zones) è più elevata e riduce le prestazioni di un'istanza Adobe Commerce sull'infrastruttura cloud nel caso in cui l'istanza non sia sovraccarica e possa sopportare l'intero carico. Tuttavia, se l'istanza è sovraccarica, master-slave contribuirà alle prestazioni distribuendo il carico sul database MySQL o Redis tra nodi diversi.
Nei cluster non sovraccaricati - Le connessioni slave rallenteranno le prestazioni del 10-15%, che è uno dei motivi per cui non è predefinito.
Nei cluster con sovraccarico, tuttavia, si verifica un aumento delle prestazioni perché questi 10-15% vengono mitigati riducendo il carico dal traffico.
-
È necessario attivare queste impostazioni per il negozio? Se il carico è elevato o si prevede un carico elevato sul database MySQL o Redis, è assolutamente necessario abilitare le connessioni slave. Per un cliente normale con traffico medio, questa è not un'impostazione ottimale da abilitare.