उपयोग के मामलों और वास्तविक समय के उदाहरणों के साथ काफ्का

May 09 2023
Apache Kafka एक ओपन-सोर्स डिस्ट्रीब्यूटेड स्ट्रीमिंग प्लेटफॉर्म है जिसे रियल-टाइम में डेटा की उच्च मात्रा को संभालने के लिए डिज़ाइन किया गया है, जो इसे रियल-टाइम डेटा पाइपलाइन, स्ट्रीमिंग एप्लिकेशन और इवेंट-संचालित आर्किटेक्चर के निर्माण के लिए एक आदर्श प्लेटफॉर्म बनाता है। उपयोग के मामले: वास्तविक समय डेटा पाइपलाइन काफ्का के लिए सबसे आम उपयोग मामलों में से एक वास्तविक समय डेटा पाइपलाइन का निर्माण कर रहा है।

Apache Kafka एक ओपन-सोर्स डिस्ट्रीब्यूटेड स्ट्रीमिंग प्लेटफॉर्म है जिसे रियल-टाइम में डेटा की उच्च मात्रा को संभालने के लिए डिज़ाइन किया गया है, जो इसे रियल-टाइम डेटा पाइपलाइन, स्ट्रीमिंग एप्लिकेशन और इवेंट-संचालित आर्किटेक्चर के निर्माण के लिए एक आदर्श प्लेटफॉर्म बनाता है।

बक्सों का इस्तेमाल करें:

रीयल-टाइम डेटा पाइपलाइन

काफ्का के लिए सबसे आम उपयोग मामलों में से एक रीयल-टाइम डेटा पाइपलाइनों का निर्माण कर रहा है। उदाहरण के लिए, काफ्का का उपयोग सेंसर, लॉग फाइल, सोशल मीडिया प्लेटफॉर्म और अन्य स्रोतों से डेटा एकत्र करने और इसे डेटा वेयरहाउस, मशीन लर्निंग प्लेटफॉर्म और अन्य गंतव्यों में स्ट्रीम करने के लिए किया जा सकता है।

मैसेजिंग सिस्टम

काफ्का को मैसेजिंग सिस्टम के रूप में भी इस्तेमाल किया जा सकता है, जिससे एप्लिकेशन और सेवाओं के बीच तेज और कुशल संदेश वितरण की अनुमति मिलती है। उदाहरण के लिए, काफ्का का उपयोग चैट एप्लिकेशन, ईमेल सिस्टम और अन्य रीयल-टाइम संचार प्रणालियों को सशक्त बनाने के लिए किया जा सकता है।

स्ट्रीम प्रोसेसिंग

अपाचे फ्लिंक और अपाचे स्पार्क स्ट्रीमिंग जैसे स्ट्रीम प्रोसेसिंग फ्रेमवर्क के लिए काफ्का का समर्थन रीयल-टाइम डेटा प्रोसेसिंग और विश्लेषण की अनुमति देता है। उदाहरण के लिए, काफ्का का उपयोग रीयल-टाइम धोखाधड़ी पहचान प्रणाली, रीयल-टाइम अनुशंसा इंजन और रीयल-टाइम भावना विश्लेषण प्रणाली बनाने के लिए किया जा सकता है।

घटना-संचालित वास्तुकला

घटना-संचालित वास्तुकला के लिए काफ्का का समर्थन इसे जटिल, घटना-संचालित अनुप्रयोगों के निर्माण के लिए एक आदर्श विकल्प बनाता है। काफ्का के साथ, वास्तविक समय में घटनाओं का उत्पादन, उपभोग और प्रसंस्करण किया जा सकता है। उदाहरण के लिए, काफ्का का उपयोग इवेंट-संचालित माइक्रोसर्विसेज आर्किटेक्चर, IoT प्लेटफॉर्म और अन्य इवेंट-संचालित सिस्टम बनाने के लिए किया जा सकता है।

लॉग एकत्रीकरण

काफ्का का उपयोग लॉग एकत्रीकरण के लिए भी किया जा सकता है, जिससे कई स्रोतों से लॉग के संग्रह, भंडारण और विश्लेषण की अनुमति मिलती है। उदाहरण के लिए, काफ्का का उपयोग वेब सर्वर, डेटाबेस और अन्य प्रणालियों से लॉग एकत्र करने और उनका विश्लेषण करने के लिए किया जा सकता है।

काफ्का के प्रमुख घटक

काफ्का विषय:

  • एक विषय डेटा की एक धारा के लिए एक तार्किक नाम है जिसके लिए निर्माता द्वारा संदेश प्रकाशित किए जाते हैं और जिससे उपभोक्ताओं द्वारा संदेशों का उपभोग किया जाता है।
  • काफ्का विषय को एक या अधिक विभाजनों में विभाजित किया जाता है, जो काफ्का क्लस्टर में संग्रहीत होते हैं।

एक ब्रोकर एक काफ्का सर्वर का एक उदाहरण है जो एक या अधिक काफ्का विभाजनों को संग्रहीत और प्रबंधित करता है। काफ्का क्लस्टर में एक या एक से अधिक दलाल होते हैं जो काफ्का विषयों के भंडारण और प्रसंस्करण के प्रबंधन के लिए एक साथ काम करते हैं।

निर्माता और उपभोक्ता:

निर्माता काफ्का विषय के लिए डेटा तैयार करता है। निर्माता समानांतर में विषयों पर डेटा लिख ​​सकते हैं, और काफ्का सुनिश्चित करता है कि डेटा समान रूप से विभाजनों में वितरित किया जाता है।
उपभोक्ता एक या अधिक काफ्का विषयों के डेटा का उपभोग करता है। उपभोक्ता विषयों की सदस्यता लेते हैं और विभाजन से डेटा पढ़ते हैं। काफ्का सुनिश्चित करता है कि एक समूह से केवल एक उपभोक्ता किसी भी समय विभाजन से डेटा प्राप्त करता है।

विभाजन:

  • काफ्का विषयों को कई विभाजनों में विभाजित किया गया है, जिसमें अपरिवर्तनीय अनुक्रम (अपरिवर्तनीय) में संदेश शामिल हैं।
  • एक विभाजन में प्रत्येक संदेश को उसके अद्वितीय ऑफसेट द्वारा निर्दिष्ट और पहचाना जाता है।
  • एक विषय में कई विभाजन लॉग भी हो सकते हैं। यह कई उपभोक्ताओं को समानांतर में एक विषय से पढ़ने की अनुमति देता है।

विभाजन में प्रत्येक संदेश को एक अद्वितीय (प्रति विभाजन) और अनुक्रमिक आईडी निर्दिष्ट किया जाता है जिसे ऑफ़सेट कहा जाता है।

उपभोक्ता समूह:

एक उपभोक्ता समूह एक या अधिक उपभोक्ताओं का एक समूह है जो काफ्का विषयों के डेटा का उपभोग करने के लिए एक साथ काम करते हैं

प्रतिकृति:

प्रतिकृति डेटा की कई प्रतियाँ बनाने की प्रक्रिया है। प्रतिकृति यह सुनिश्चित करती है कि यदि कोई ब्रोकर (नोड) विफल हो जाता है या अनुपलब्ध हो जाता है, तो उस ब्रोकर पर संग्रहीत डेटा को अन्य ब्रोकरों से पुनर्प्राप्त किया जा सकता है जिनके पास उसी डेटा की एक प्रति है।

काफ्का एपीआई

काफ्का के चार मुख्य एपीआई हैं:

निर्माता एपीआई एक एप्लिकेशन को एक या अधिक काफ्का विषयों के लिए रिकॉर्ड की एक धारा प्रकाशित करने की अनुमति देता है।

उपभोक्ता एपीआई एक एप्लिकेशन को एक या अधिक विषयों की सदस्यता लेने और रिकॉर्ड की धारा को संसाधित करने की अनुमति देता है।

स्ट्रीम एपीआई एक एप्लिकेशन को स्ट्रीम प्रोसेसर के रूप में कार्य करने की अनुमति देता है, एक या अधिक विषयों से इनपुट स्ट्रीम का उपभोग करता है और आउटपुट स्ट्रीम को एक या अधिक आउटपुट विषयों में उत्पादन करता है, प्रभावी रूप से इनपुट स्ट्रीम को आउटपुट स्ट्रीम में बदल देता है।

कनेक्टर एपीआई पुन: प्रयोज्य उत्पादकों या उपभोक्ताओं को बनाने और चलाने की अनुमति देता है जो काफ्का विषयों को मौजूदा अनुप्रयोगों या डेटा सिस्टम से जोड़ते हैं। उदाहरण के लिए, संबंधपरक डेटाबेस के लिए एक कनेक्टर तालिका में प्रत्येक परिवर्तन को कैप्चर कर सकता है।

वास्तविक दुनिया के उदाहरण

  1. लिंक्डइन: लिंक्डइन रीयल-टाइम उपयोगकर्ता गतिविधि डेटा को प्रोसेस और स्ट्रीम करने के लिए काफ्का का उपयोग करता है। प्लेटफ़ॉर्म प्रति दिन 2 ट्रिलियन से अधिक संदेश उत्पन्न करता है और काफ्का वास्तविक समय प्रसंस्करण और विश्लेषण की अनुमति देकर इस विशाल मात्रा में डेटा को प्रबंधित करने में मदद करता है।
  2. उबेर: उबेर अपने रीयल-टाइम डेटा स्ट्रीम को प्रबंधित करने के लिए काफ्का का उपयोग करता है। काफ्का उबर को कंपनी के ड्राइवर और राइडर एप्लिकेशन द्वारा उत्पन्न डेटा के प्रवाह को प्रबंधित करने में मदद करता है, जिसमें रीयल-टाइम स्थान डेटा, यात्रा डेटा और भुगतान डेटा शामिल हैं।
  3. नेटफ्लिक्स: नेटफ्लिक्स काफ्का का उपयोग अपनी डेटा पाइपलाइनों को प्रबंधित करने और अपने माइक्रोसर्विसेज के बीच डेटा स्ट्रीम करने के लिए करता है। काफ्का नेटफ्लिक्स को विभिन्न सेवाओं के बीच डेटा के प्रवाह को प्रबंधित करने में मदद करता है, यह सुनिश्चित करता है कि प्रत्येक सेवा के पास अपने उपयोगकर्ताओं को एक सहज स्ट्रीमिंग अनुभव प्रदान करने के लिए आवश्यक डेटा तक पहुंच हो।
  4. Airbnb: Airbnb काफ्का का उपयोग अपने इवेंट-संचालित आर्किटेक्चर को शक्ति प्रदान करने के लिए करता है। काफ्का एयरबीएनबी को अपने उपयोगकर्ताओं और सेवाओं द्वारा उत्पन्न घटनाओं के प्रवाह को प्रबंधित करने में मदद करता है, जिससे यह व्यक्तिगत अनुशंसाएं और एक सहज उपयोगकर्ता अनुभव प्रदान कर सके।
  5. ट्विटर: ट्विटर अपने रीयल-टाइम सोशल मीडिया डेटा को प्रबंधित करने के लिए काफ्का का उपयोग करता है। काफ्का ट्विटर को अपने उपयोगकर्ताओं द्वारा उत्पन्न भारी मात्रा में डेटा का प्रबंधन करने में मदद करता है, जिससे वह अपने विज्ञापनदाताओं और भागीदारों को वास्तविक समय की अंतर्दृष्टि और विश्लेषण प्रदान कर सकता है।

स्प्रिंग बूट के साथ स्प्रिंग सिक्योरिटी रोल आधारित एक्सेस

JWT के साथ वसंत सुरक्षा प्रमाणीकरण और प्राधिकरण

स्प्रिंग एओपी ट्यूटोरियल

स्प्रिंग बूट लॉगिंग ट्यूटोरियल

स्प्रिंग बूट में केंद्रीकृत विन्यास

स्प्रिंग बूट में कस्टम सत्यापन

जेविनपॉल डोमेनिको निकोली ट्रे हफिन मेहमत अर्सल मेहमत ओजकाया शिक्षाप्रद टीम