Apache Kafka 4.0 มีอะไรใหม่บ้างมาดูกัน

โพสต์โดย: admin | เมื่อ: 2025-4-7 16:01| เข้าชม: 178| ความคิดเห็น: 0

เกริ่นนำ

เป็นระยะเวลาเกือบจะ 4 ปี(ตุลาคม 2021) แล้วที่ Apache Kafka ได้เปิดตัว version 3.0 ได้เวลาอัพเดทครั้งใหญ่อีกครั้งวันนี้เราจะมาดู Feature/Improvement ที่น่าสนใจกัน

apache-kafka.webp


ฝั่ง Kafka Broker

KIP-848: The Next Generation of the Consumer Rebalance Protocol

หลังจากมีการทดสอบในเวลา 3.7 (Early access) ในที่สุดก็พร้อมให้ใช้งานบน Production กันแล้ว แล้วของเดิมมันไม่ดึยังไงมาย้อนความกันเดิม(กว่า 10 ปีมาแล้ว) stop-the-world rebalancing style ที่ทุกคนที่ใช้งาน Apache Kafka ต้องพบเจอถึงแม้จะมีความพยายามในการแก้ไข ยกตัวอย่างเช่น Cooperative rebalancing เป็นต้น ก็ดูเหมือนยังไม่สามารถแก้ไขได้อย่างหมดจดโดย ขอใช้รูปภาพวาดง่ายๆอธิบายการ Rebalancing ใน version ก่อนหน้านี้ ด้วยรูปวาดแบบง่ายๆ

9a3938f4-b98e-40a3-acb3-d17edbf04bda.jpeg

ซึ่งเหตุการณ์นี้จะเกิดขึ้นทั้งตอนที่มีคนเข้าและออก ทำให้ consumer group มีการหยุดชะงักและหาก consumer group มี member ที่เยอะยิ่งทำให้เวลาที่จะเกิดการหยุดนานขึ้นโดยการแก้ไขนี้ทำการย้ายการจัดการเรื่อง rebalance และ assign partition ให้กับฝั่ง Group coorinator แทน

KIP-932: Queues for Kafka (Early Access)
มีการทดลอง Feature Queues เพื่อเพิ่มขีดความสามารถของ Kafka ในกรณีที่ส่งข้อมูลแบบ Point to Point หรือต้องการทำงานลักษณะที่เป็น queue จึงนำเสนอ consumer group แบบใหม่ที่เรียกว่า share group ที่มีความสามารถคล้าย queue ยกตัวอย่างเช่น acknowledge ในระดับ message เป็นต้น

KIP-896: Remove old client protocol API versions in Kafka 4.0
หลังจาก Kafka protocol backward compatibility ด้วย 0.8.0 มานานกว่า 10 ปี ใน version นี้มีการประกาศชั้นต่ำคือ 2.1 แล้ว



  • https://www.openlogic.com/resources/apache-kafka-101
  • https://kafka.apache.org/blog#apache_kafka_400_release_announcement
  • https://archive.apache.org/dist/kafka/4.0.0/RELEASE_NOTES.html
  • https://cwiki.apache.org/confluence/display/KAFKA/KIP-848%3A+The+Next+Generation+of+the+Consumer+Rebalance+Protocol
  • https://www.confluent.io/blog/cooperative-rebalancing-in-kafka-streams-consumer-ksqldb/#diy-cooperative-rebalancing
  • https://www.confluent.io/blog/queues-on-kafka/
  • https://cwiki.apache.org/confluence/display/KAFKA/KIP-896%3A+Remove+old+client+protocol+API+versions+in+Kafka+4.0


ขออภัย! คุณไม่ได้รับสิทธิ์ในการดำเนินการในส่วนนี้ กรุณาเลือกอย่างใดอย่างหนึ่ง เข้าสู่ระบบ | ลงทะเบียน

Powered by Discuz! Copyright 2015-2016 ©Bohat All right reserved GMT+7, 2025-11-10 07:12, Processed in 0.028289 second(s), 26 queries .
ตอบกระทู้ ขึ้นไปด้านบน ไปที่หน้ารายการกระทู้