Operazioni distribuite e ripristino con microservizi stateless

1

Suppongo di avere il seguente caso d'uso:

  • Voglio un servizio sincrono se possibile (in caso di arresto anomalo della macchina voglio terminarlo in background, da qualche altro nodo)
  • Voglio salvare qualcosa nel mio database e pubblicare un evento su un flusso di eventi come kafka o kinesis (che significa 2 transazioni db + evt stream)

Sono stateless con dockers quindi non so se la macchina di transazione che si riprende sia la stessa che è morta in precedenza. Quindi la domanda è: come posso assicurarmi che una transazione del genere sia finita?

Mi stavo chiedendo una transazione asincrona, ma il mio servizio non può essere sincrono, o vorrei creare una transazione con uno stato e interrogarlo mentre viene gestito in modo asincrono. Quali sono le soluzioni comuni? Ho solo bisogno di raggiungere la coerenza finale

    
posta Martin Kosicky 19.01.2018 - 08:48
fonte

0 risposte

Leggi altre domande sui tag