Junior — Middle
Kur Kafka viduje saugomas nuskaitytų pranešimų Offset reikšmė?
sobes.tech AI
Atsakymas iš AI
Apache Kafka, pernaudotų pranešimų Offset reikšmė saugoma specialiame vidiniame temoje pavadinimu __consumer_offsets. Šis temoje saugoma informacija apie kiekvienos vartotojų grupės (consumer group) dabartinę poziciją kiekviename temą (partition).
Taip, Kafka nesaugo offset vietoje kliento, o centralizuotai klasteryje, kas leidžia vartotojams atsistatyti ir tęsti skaitymą nuo reikiamos pozicijos.
Be to, klientai gali rankiniu būdu (commit) arba automatiškai saugoti offset, priklausomai nuo vartotojo nustatymų.
Pavyzdys Go kalba naudojant confluent-kafka-go biblioteką offsetų commit'ui:
consumer.CommitMessage(message)
kur message yra perskaitytas pranešimas, kurio offset'as bus išsaugotas.