ในโลกปัจจุบัน ข้อมูลเป็นส่วนประกอบหลัก ของแอปพลิเคชันอินเทอร์เน็ตและโดยทั่วไปจะครอบคลุมสิ่งต่อไปนี้:
- การเข้าชมหน้าและการคลิก
- กิจกรรมของผู้ใช้
- เหตุการณ์ที่เกี่ยวข้องกับการเข้าสู่ระบบ
- กิจกรรมเครือข่ายสังคมเช่นไลค์แชร์และแสดงความคิดเห็น
- เมตริกเฉพาะแอปพลิเคชัน (เช่นบันทึกเวลาในการโหลดหน้าประสิทธิภาพเป็นต้น)
นี้ ข้อมูลสามารถใช้เพื่อเรียกใช้การวิเคราะห์แบบเรียลไทม์ เพื่อวัตถุประสงค์ต่างๆซึ่งบางส่วน ได้แก่ :
- การส่งโฆษณา
- ติดตามพฤติกรรมของผู้ใช้ที่ผิดปกติ
- แสดงการค้นหาตามความเกี่ยวข้อง
- แสดงคำแนะนำตามกิจกรรมก่อนหน้านี้
ปัญหา: การรวบรวมข้อมูลทั้งหมดไม่ใช่เรื่องง่ายเนื่องจากข้อมูลถูกสร้างขึ้นจากแหล่งต่างๆในรูปแบบที่แตกต่างกัน
สารละลาย: วิธีหนึ่งในการแก้ปัญหานี้คือการใช้ระบบส่งข้อความ ระบบการส่งข้อความให้การผสานรวมที่ราบรื่นระหว่างแอปพลิเคชันแบบกระจายโดยใช้ข้อความ
อาปาเช่คาฟคา:
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 ที่นี่ .
มีคำถามสำหรับเรา? โปรดระบุไว้ในส่วนความคิดเห็นแล้วเราจะติดต่อกลับไป
กระทู้ที่เกี่ยวข้อง: