La quantità di server e la complessità della nostra applicazione sono in crescita e ora abbiamo server in diverse regioni (ospitati su AWS). Alcune operazioni di database richiedono una bassa latenza, quindi abbiamo bloccato un database in ogni area (che è fondamentalmente una cache utente) per mantenere bassa la latenza della rete. Il modo in cui il server delle applicazioni attualmente sa quale cache / database utente effettuare la propria chiamata dipende da una variabile environmnt impostata al suo interno. Questo ha funzionato bene, ma sembra hacky e non ottimale. C'è un modo per farlo automaticamente?
Stavo considerando l'utilizzo di un pacchetto come fping e ping di ogni database quando il server delle app ricarica (o lo memorizza nella cache la prima volta) e utilizza le latenze corrispondenti per decidere quale database ha la latenza più bassa per ogni server delle app. Non sono sicuro che questa sia l'idea migliore.