at-most-once, at-least-once, exactly once.

В першому випадку, клієнт не відсилатиме повідомлення повторно у випадку помилки, щоб уникнути дублювання. Однак деколи це може призвести до втрати даних. Повідомлення може прийти один раз, або ніколи.
В другому, клієнт пробуватиме надсилати повідомлення повторно, доки буде отримувати повідомлення про помилку від брокера. Таким чином дані ніколи не будуть втрачені. Але допускається дублювання.
І нарешті у exactly once, повідомлення буде отримано лише один раз, гарантовано.

Пр замовчуванню, Кафка використовує стратегію at-least-once, але можна відключити retries на продюсері, щоб отримати at-most-once. Для exactly once, потрібно переконатись, що увімкнено налаштування для ідемпотентного запису, тоді Kafka зможе бачити і маркувати дублікати по певному ID ще в процесі запису.
อย่างน้อยหนึ่งครั้ง, อย่างน้อยหนึ่งครั้ง, อย่างน้อยหนึ่งครั้ง. ในกรณีแรก ลูกค้าจะไม่ส่งข้อความอีกครั้งในกรณีที่มีข้อผิดพลาดเพื่อหลีกเลี่ยงการทำซ้ำ อย่างไรก็ตาม บางครั้งอาจทำให้ข้อมูลสูญหายได้ ข้อความอาจมาครั้งเดียวหรือไม่เคยเลย ประการที่สอง ลูกค้าจะพยายามส่งข้อความอีกครั้งจนกว่าจะได้รับข้อความแสดงข้อผิดพลาดจากนายหน้า ด้วยวิธีนี้ข้อมูลจะไม่สูญหาย แต่อนุญาตให้ทำซ้ำได้ และสุดท้ายในครั้งเดียวก็จะได้รับข้อความเพียงครั้งเดียวเท่านั้นรับประกัน ตามค่าเริ่มต้น Kafka จะใช้กลยุทธ์อย่างน้อยหนึ่งครั้ง แต่คุณสามารถปิดใช้การลองซ้ำกับผู้ผลิตเพื่อให้ได้มากที่สุดหนึ่งครั้ง คุณต้องตรวจสอบให้แน่ใจว่าได้เปิดใช้งานการตั้งค่าสำหรับการบันทึก idempotent แล้ว Kafka จะสามารถดูและทำเครื่องหมายรายการซ้ำด้วย ID บางอย่างที่มีอยู่แล้วในระหว่างขั้นตอนการบันทึก
spam lang_mismatch pii not_appropriate hate_speech sexual_content quality toxicity humor creativity violence