Abbiamo l'installazione di Kafka per essere in grado di elaborare i messaggi in parallelo da diversi server. Ma ogni messaggio deve essere elaborato esattamente una sola volta (e da un solo server). Abbiamo installato e funzionante e funziona bene.Avere un consumer Kafka leggere un singolo messaggio alla volta
Ora, il problema per noi è che i consumatori di Kafka leggono i messaggi in batch per la massima efficienza. Questo porta a un problema se/quando l'elaborazione fallisce, il server si spegne o qualsiasi altra cosa, perché quindi perdiamo i dati che stavano per essere elaborati.
C'è un modo per far leggere al consumatore il messaggio alla volta per consentire a Kafka di conservare i messaggi non elaborati? Qualcosa di simile a; Consumatore tira un messaggio -> processo -> commuta offset al termine, ripeti. È fattibile usando Kafka? Qualche idea/idea?
Grazie!
Sì, sembra proprio non realmente supportato. Ma grazie per la risposta! :/ –
Prego. Inoltre, se hai trovato che una delle nostre risposte ha risposto o è stata utile, una risposta accettata e/o un voto in su sarebbero apprezzate. – morganw09dev