Apache Kafka: ระบบส่งข้อความแบบกระจายรุ่นต่อไป



Apache Kafka มีระบบส่งข้อความที่มีปริมาณงานสูงและปรับขนาดได้ทำให้เป็นที่นิยมในการวิเคราะห์แบบเรียลไทม์ เรียนรู้ว่าบทช่วยสอน Apache kafka สามารถช่วยคุณได้อย่างไร

ในโลกปัจจุบัน ข้อมูลเป็นส่วนประกอบหลัก ของแอปพลิเคชันอินเทอร์เน็ตและโดยทั่วไปจะครอบคลุมสิ่งต่อไปนี้:





  • การเข้าชมหน้าและการคลิก
  • กิจกรรมของผู้ใช้
  • เหตุการณ์ที่เกี่ยวข้องกับการเข้าสู่ระบบ
  • กิจกรรมเครือข่ายสังคมเช่นไลค์แชร์และแสดงความคิดเห็น
  • เมตริกเฉพาะแอปพลิเคชัน (เช่นบันทึกเวลาในการโหลดหน้าประสิทธิภาพเป็นต้น)

นี้ ข้อมูลสามารถใช้เพื่อเรียกใช้การวิเคราะห์แบบเรียลไทม์ เพื่อวัตถุประสงค์ต่างๆซึ่งบางส่วน ได้แก่ :

  • การส่งโฆษณา
  • ติดตามพฤติกรรมของผู้ใช้ที่ผิดปกติ
  • แสดงการค้นหาตามความเกี่ยวข้อง
  • แสดงคำแนะนำตามกิจกรรมก่อนหน้านี้

ปัญหา: การรวบรวมข้อมูลทั้งหมดไม่ใช่เรื่องง่ายเนื่องจากข้อมูลถูกสร้างขึ้นจากแหล่งต่างๆในรูปแบบที่แตกต่างกัน



สารละลาย: วิธีหนึ่งในการแก้ปัญหานี้คือการใช้ระบบส่งข้อความ ระบบการส่งข้อความให้การผสานรวมที่ราบรื่นระหว่างแอปพลิเคชันแบบกระจายโดยใช้ข้อความ

apache-kafka-next-generation-distributed-messaging-system

อาปาเช่คาฟคา:



Apache Kafka เป็นระบบส่งข้อความสมัครสมาชิกแบบกระจายซึ่งเดิมพัฒนาที่ LinkedIn และต่อมาได้กลายเป็นส่วนหนึ่งของโครงการ Apache Kafka รวดเร็วคล่องตัวปรับขนาดได้และกระจายตามการออกแบบ

สถาปัตยกรรมคาฟคาและคำศัพท์:

หัวข้อ: กระแสของข้อความที่อยู่ในหมวดหมู่หนึ่งเรียกว่าหัวข้อ

ผู้ผลิต: โปรดิวเซอร์สามารถเป็นแอปพลิเคชันใดก็ได้ที่สามารถเผยแพร่ข้อความไปยังหัวข้อได้

ผู้บริโภค: ผู้บริโภคสามารถเป็นแอปพลิเคชันใด ๆ ที่สมัครรับหัวข้อและใช้ข้อความ

นายหน้า: คลัสเตอร์ Kafka คือชุดของเซิร์ฟเวอร์ซึ่งแต่ละเซิร์ฟเวอร์เรียกว่าโบรกเกอร์

Kafka สามารถปรับขนาดได้และอนุญาตให้สร้างคลัสเตอร์หลายประเภท

  • โหนดเดียวคลัสเตอร์โบรกเกอร์เดียว
  • โหนดเดียวหลายคลัสเตอร์โบรกเกอร์
  • หลายโหนดคลัสเตอร์หลายโบรกเกอร์

โหนดเดียวนายหน้าเดียว

ZooKeeper มีบทบาทอย่างไร

โบรกเกอร์ Kafka แต่ละรายประสานงานกับโบรกเกอร์ Kafka อื่น ๆ โดยใช้ ZooKeeper ผู้ผลิตและผู้บริโภคจะได้รับแจ้งจากบริการ ZooKeeper เกี่ยวกับการมีโบรกเกอร์ใหม่หรือความล้มเหลวของนายหน้าในระบบคาฟคา

โหนดเดียวหลายโบรกเกอร์

หลายโหนดหลายโบรกเกอร์

คาฟคา @ LinkedIn

LinkedIn Newsfeed ขับเคลื่อนโดย Kafka

.format ทำอะไรใน python

คำแนะนำ LinkedIn ขับเคลื่อนโดย Kafka

การแจ้งเตือน LinkedIn ขับเคลื่อนโดย Kafka

บันทึก: นอกเหนือจากนี้ LinkedIn ยังใช้ Kafka สำหรับงานอื่น ๆ อีกมากมายเช่นการตรวจสอบบันทึกเมตริกประสิทธิภาพการปรับปรุงการค้นหาและอื่น ๆ

ใครใช้คาฟคาอีกบ้าง?

DataSift: DataSift ใช้ Kafka เป็นผู้รวบรวมเหตุการณ์การตรวจสอบและติดตามการใช้สตรีมข้อมูลของผู้ใช้แบบเรียลไทม์

วูกา: Wooga ใช้ Kafka ในการรวบรวมและประมวลผลข้อมูลการติดตามจากเกม Facebook ทั้งหมดของพวกเขา (โฮสต์ที่ผู้ให้บริการหลายราย) ในที่ส่วนกลาง

Spongecell: Spongecell ใช้ Kafka เพื่อเรียกใช้การวิเคราะห์ทั้งหมดและการตรวจสอบไปป์ไลน์ที่ขับเคลื่อนทั้งแอปพลิเคชันแบบเรียลไทม์และ ETL

น่าเกลียด: Loggly คือการจัดการบันทึกบนคลาวด์ที่ได้รับความนิยมมากที่สุดในโลก ใช้ Kafka สำหรับการรวบรวมบันทึก

การศึกษาเปรียบเทียบ: Kafka กับ ActiveMQ เทียบกับ RabbitMQ

Kafka มีรูปแบบการจัดเก็บที่มีประสิทธิภาพมากขึ้นโดยเฉลี่ยแล้วแต่ละข้อความมีค่าใช้จ่ายใน Kafka 9 ไบต์เทียบกับ 144 ไบต์ใน ActiveMQ

ทั้งใน ActiveMQ และ RabbitMQ โบรกเกอร์จะรักษาสถานะการส่งของทุกข้อความโดยการเขียนลงดิสก์ แต่ในกรณีของ Kafka ไม่มีการเขียนดิสก์จึงทำให้เร็วขึ้น

ด้วยการนำคาฟคามาใช้ในการผลิตอย่างกว้างขวางดูเหมือนว่าจะเป็นทางออกที่ดีในการแก้ปัญหาในโลกแห่งความเป็นจริง การฝึกอบรม Apache Kafka สามารถช่วยให้คุณนำหน้าเพื่อนในอาชีพการวิเคราะห์แบบเรียลไทม์ เริ่มต้นด้วยบทช่วยสอน Apache Kafka ที่นี่ .

มีคำถามสำหรับเรา? โปรดระบุไว้ในส่วนความคิดเห็นแล้วเราจะติดต่อกลับไป

กระทู้ที่เกี่ยวข้อง:

สิ่งที่คุณต้องการสำหรับอาชีพใน Real-Time Analytics