Instradamento delle richieste al livello di calcolo - AWS Guida prescrittiva

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

Instradamento delle richieste al livello di calcolo

Con il routing delle richieste a livello di calcolo, il codice eseguito nel livello di elaborazione determina se elaborare la richiesta localmente o passarla a una copia di se stessa in esecuzione in un'altra regione. Quando si utilizza la modalità di scrittura in una regione, il livello di calcolo potrebbe rilevare che non si tratta della regione attiva e consentire operazioni di lettura locali inoltrando tutte le operazioni di scrittura a un'altra regione. Questo codice del livello di calcolo deve conoscere la topologia dei dati e le regole di routing e applicarle in modo affidabile, in base alle impostazioni più recenti che specificano quali regioni sono attive per quali dati. Lo stack software esterno all'interno della regione non deve conoscere il modo in cui il microservizio instrada le richieste di lettura e scrittura. In una progettazione affidabile, la regione ricevente verifica se è la regione primaria corrente per l'operazione di scrittura. In caso contrario, genera un errore che indica che lo stato globale deve essere corretto. La regione ricevente potrebbe anche memorizzare l'operazione di scrittura nel buffer per un breve intervallo, se la regione primaria è in fase di modifica. In ogni caso, lo stack di calcolo in una regione effettua la scrittura solo sul proprio endpoint DynamoDB locale, ma gli stack di calcolo potrebbero comunicare tra loro.

Instradamento delle richieste al livello di calcolo

Il Vanguard Group utilizza un sistema chiamato Global Orchestration and Status Tool (GOaST) e una libreria chiamata Global Multi-Region library (GMRlib) per questo processo di routing, presentato a re:Invent 2022. follow-the-sun Usano un unico modello primario. GOaSTmantiene lo stato globale, in modo simile al controllo del ARC routing discusso nella sezione precedente. Utilizza una tabella globale per tenere traccia di quale regione è la regione principale e quando è pianificato lo switch primario successivo. Tutte le operazioni di lettura e scrittura vengono eseguiteGMRlib, il che si coordina conGOaST. GMRlibconsente di eseguire le operazioni di lettura localmente, a bassa latenza. Per le operazioni di scrittura, GMRlib verifica se la regione locale è la regione principale corrente. In affermativo, l'operazione di scrittura viene completata direttamente. In caso contrario, GMRlib inoltra l'attività di scrittura GMRlib alla regione principale. La libreria ricevente conferma di essere la regione primaria e genera un errore in caso contrario, il che genera un ritardo di propagazione con lo stato globale. Questo approccio offre un vantaggio in termini di convalida in quanto non viene effettuata una scrittura diretta su un endpoint DynamoDB remoto.