Ce este parametrul acks
Parametrul acks este cel mai important reglaj pentru echilibrul dintre viteză (debit) și siguranța datelor (durabilitate) în Apache Kafka.
Exemplu Concret: Configurare pentru durabilitate maximă
Properties props = new Properties();
props.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, "localhost:9092");
props.put(ProducerConfig.ACKS_CONFIG, "all"); // echivalent cu -1
props.put(ProducerConfig.ENABLE_IDEMPOTENCE_CONFIG, "true");
Cele trei valori posibile pentru acks
acks=0: Producătorul trimite mesajul prin socket și nu așteaptă nicio confirmare din partea brokerului. Risc masiv de pierdere dacă brokerul cade înainte de scriere. Oferă cel mai mare debit.acks=1: Producătorul așteaptă confirmarea doar de la brokerul Lider. Dacă liderul cade imediat după confirmare înainte ca replicile să copieze mesajul, datele se pot pierde.acks=all(sau-1): Producătorul așteaptă ca liderul și toate replicile sincronizate active din ISR (respectândmin.insync.replicas) să confirme scrierea pe disc. Garanție absolută împotriva pierderii de date.
Întrebări & Exemple de Cod:
Parametrul acks (0, 1, all) în Producătorul KafkaAi o nelămurire despre utilizarea comenzii
Parametrul acks (0, 1, all) în Producătorul Kafkasau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!
Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.