Ho uno script nodejs: consente di chiamarlo "processo1" su server1 e lo stesso script è in esecuzione su server2 - "processo2" (solo con flag = false).Script di nodo - Failover da un server a un altro server
Process1 eseguirà le azioni preformate e sarà in stato "in esecuzione" all'inizio. process2 sarà in esecuzione ma in stato "block" con flag programmato al suo interno.
Quello che voglio fare è implementare il failover/fallback per questo processo. Se process1 abbassa il flag su process2 cambierà e process2 assumerà tutte le attività da process1 (e viceversa quando process1 torna indietro - fallback).
Qual è l'approccio migliore per farlo? Connessione TCP tra quelli?
NOTA: Anche il suo non troppo rilevante, ma voglio dire che questi processi stanno andando a lavorare internamente, stabilire una connessione TCP con il terzo server e analisi dei dati che stiamo ottenendo da quel server. Entrambi i processi saranno in esecuzione su entrambi i server, ma solo ONE processo al momento può essere la fornitura di servizi - in esecuzione con bandiera vero (e non entrambi)
Aggiornamento: Come per discussioni muggito e ricerca interna/test e monitoraggio della soluzione, utilizzando il proxy inverso farà risparmiare un sacco di tempo. Il failover di programmazione basato su 2 server coprirà solo il 70% dei casi relativi al processo interno utilizzato su entrambe le macchine, ma non sarà possibile rilevare altri 30% dei problemi causati a causa dei problemi con il rete (soprattutto se si ha molto traffico verso DATA RECEIVER).
proxy inverso. o con nodo o nginx (o altri ...) – Amit
@Amit Potresti per favore elaborarlo almeno un po '. Stai suggerendo di aggiungere altro server nel mezzo che gestirà questo? Non sono sicuro che sto seguendo? Questi script non saranno disponibili pubblicamente (per servire le richieste http) se ci si riferisce al posizionamento del proxy inverso prima dei server per quel caso. – cool
quindi immagino che il mio commento sia irrilevante, ma la tua domanda non sta raccontando abbastanza della trama (secondo me, comunque). Cosa sta facendo il processo? è un singolo compito lungo o serve richieste in corso? cosa significa "scende" e come può essere identificato? – Amit