इवेंट स्ट्रीमिंग (Event Streaming)

यह क्या है

इवेंट स्ट्रीमिंग एक ऐसा दृष्टिकोण है जहां सॉफ़्टवेयर इवेंट डेटा को एक एप्लिकेशन से दूसरे एप्लिकेशन में भेजता है ताकि वे लगातार संवाद कर सकें कि वे क्या कर रहे हैं। एक ऐसी सेवा की कल्पना करें जो अन्य सेवाओं के लिए वह सब कुछ प्रसारित करती है जो वह करती है। किसी सेवा द्वारा की गई प्रत्येक गतिविधि को एक ईवेंट के रूप में संदर्भित किया जाता है, इसलिए इसे इवेंट स्ट्रीमिंग कहा जाता है। उदाहरण के लिए, NASDAQ को हर सेकंड स्टॉक और कमोडिटी प्राइसिंग पर अपडेट मिलता है। यदि आपके पास एक ऐसा एप्लिकेशन है जो स्टॉक के एक विशिष्ट सेट की निगरानी करता है, तो आप लगभग रीयल-टाइम में वह जानकारी प्राप्त करना चाहेंगे।
Yahoo! Finance एक एपीआई प्रदान करता है जो NASDAQ से डेटा खींचता है और उनके आवेदन से सूचना (या घटनाओं) को भेजता है (या स्ट्रीम करता है) किसी भी आवेदन के लिए जो इसकी सदस्यता लेता है। भेजे जा रहे डेटा के साथ-साथ उस डेटा में परिवर्तन (स्टॉक की कीमतें) घटनाएँ हैं जबकि उन्हें किसी एप्लिकेशन तक पहुँचाने की प्रक्रिया इवेंट स्ट्रीमिंग है।

समस्या

परंपरागत रूप से, Yahoo! Finance ने एकल टीसीपी अनुरोधों का उपयोग किया था। यह बहुत अक्षम था क्योंकि इसमें प्रत्येक घटना के लिए एक कनेक्शन बनाने की आवश्यकता होती थी| चूंकि डेटा प्रकृति में अधिक रीयल-टाइम बन जाता है, ऐसे समाधान को स्केल करना अक्षम हो जाता है। एक बार कनेक्शन खोलना और घटनाओं को प्रवाहित होने देना वास्तविक समय संग्रह के लिए आदर्श है।उत्पन्न होने वाले डेटा की मात्रा तेजी से बढ़ रही है और इसके साथ ही डेटा स्थिति निरंतर प्रवाह में है। डेवलपर्स और उपयोगकर्ताओं को उस डेटा को वास्तविक समय में देखने में सक्षम होना चाहिए।

समाधान

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


अंतिम बार संशोधित April 22, 2023: [hi] Localise Event-streaming in Hindi (#1538) (c6401de)