معالجة الأخطاء ومواضيع الرسائل الميتة
في هذا الدرس 4 موضوعات
هذا الدرس مخطط له. يعرض المخطط أدناه الموضوعات التي سيغطيها، ولم يُنشر الدرس الكامل بعد.
نص الدروس والتمارين باللغة الإنجليزية، بينما تبقى واجهة الموقع وعناوين الدروس بالعربية.
في هذا الدرس
keep a poison record from blocking a partition.
الموضوعات المخطط لها
- An exception in a listener hits the error handler; the default
DefaultErrorHandlerretries with a back-off, then skips (logs). - Configure
DeadLetterPublishingRecovererto send failed records to<topic>.DLT. - Classify errors: retry transient ones (timeouts), send non-retryable ones (bad payload) straight to the DLT.
- Non-blocking retry topics are available through
@RetryableTopic(verify support for your version). - Monitor DLT size and keep the failure headers for diagnosis.
تفاصيل المخطط المبدئي
عرض عملي
@Bean DefaultErrorHandler errors(KafkaTemplate<Object,Object> t) {
return new DefaultErrorHandler(new DeadLetterPublishingRecoverer(t), new FixedBackOff(1000L, 3));
}اختبر فهمك
Where does a record go after retries are exhausted?
أظهر الإجابة
To the dead-letter topic.
التطبيق
طبّق هذا الدرس بمختبر الوحدة وتمارينها واختبارها.
تعليم الدرس كمكتمل اختياري ويمكنك التراجع عنه في أي وقت. يبقى تقدمك محفوظًا في هذا المتصفح.