Tổng quan về Producer trong Kafka

Có rất nhiều lý do để một ứng dụng cần sử dụng đến Kafka, và write message vào hệ thống: recording hoặc động của user cho kiểm kiểm toán hoặc phân tích , recording metrics, store log message, recording thông tin từ điện thoại, giao tiếp giữa các ứng dụng với nhau. Đa dạng những

  • Có rất nhiều lý do để một ứng dụng cần sử dụng đến Kafka, và write message vào hệ thống: recording hoặc động của user cho kiểm kiểm toán hoặc phân tích , recording metrics, store log message, recording thông tin từ điện thoại, giao tiếp giữa các ứng dụng với nhau.
  • Đa dạng những trường hợp khác nhau cũng sẽ có nhiều yêu cầu khác nhau, mỗi message hoặc cũng có thể chấp nhận được cho sự mất mát data, cũng như duplication message.
  • Trong giao dịch thẻ tín dụng hoặc các giao dịch chuyển tiền, sẽ không bao giờ xảy ra trường hợp mất message hoặc duplication. Độ trễ có thể thấp nhưng không quá 500ms vẫn có thể chấp nhận được và thông lượng xử lý. Ví dụ chúng ta mong muốn 1 giây có thể xử lý khoảng 1 triệu message.
  • Trong một số trường hợp khi user click trên page cần được lưu trữ hành động của người dùng lại. Trong một số trường hợp nó sẽ bị mất hoặc bị duplication message vẫn coi là ok. Độ trễ có thể cao miễn là không ảnh hưởng đến trải nghiệm người dùng là được.
  • Có một số yêu cầu khác nhau sẽ ảnh hưởng đến cách bạn write message xuống, lúc này sẽ phụ thuộc vào config bạn dùng.
  • Để bắt đầu gửi message xuống, bạn cần tạo một topic mà bạn muốn gửi data, có thể chỉ định key cũng như partition. Khi message được gửi xuống producer sẽ serialize key và value của object đến byte-array. Khi data được sent xuống, nếu có chỉ định partition thì sẽ không làm gì cả mà chỉ trả về partition. Còn nếu không chọn partitioner sẽ chọn partition, khi đã chọn xong thì producer đã biết topic và partition sẽ đi đến, nó sẽ add record đến batch của nhiều record và gửi đến topic-partition.
  • Khi broker nhận được message nó sẽ trả response, nếu broker write message failed nó sẽ trả về error, và producer sẽ cố thử lại vài lần rồi mới trả về data thành công hoặc thất bại.

Nguồn: viblo.asia

Bài viết liên quan

Tấn Công Ứng Dụng Web: Mối Đe Dọa Hàng Đầu – Phần 2

viết lại nội dung này ” Phát hiện các cuộc tấn công Cross Site Scripting (XSS)

AI Chatbot 2025: Xu Hướng Tất Yếu Cho Doanh Nghiệp Dẫn Đầu

Giới thiệu AI chatbots đã trải qua một hành trình đáng kể, từ những công cụ t

Tấn Công Ứng Dụng Web: Mối Đe Dọa Hàng Đầu – Phần 1

Tấn công web là gì? Ứng dụng web là các ứng dụng cung cấp dịch vụ cho người

SEO Mũ Trắng, Mũ Đen, Mũ Xám: Hiểu Biết và Lựa Chọn Phù Hợp

SEO Mũ Trắng, Mũ Đen, Mũ Xám: Hiểu Biết và Lựa Chọn Phù Hợp Trong kỷ nguyên s