ঘটনা প্রবাহ ( Event Streaming )

ঘটনা প্রবাহ হল এমন একটি পদ্ধতি যেখানে সফ্টওয়্যার একটি অ্যাপ্লিকেশন থেকে অন্য অ্যাপ্লিকেশনে ঘটনার তথ্য পাঠায় যাতে তারা কী করছে তা অবিরতভাবে যোগাযোগ করতে পারে। অন্য সমস্ত পরিষেবাতে যা করে তা সম্প্রচার করে এমন একটি পরিষেবার চিত্র নিন৷ একটি পরিষেবা দ্বারা নেওয়া প্রতিটি কার্যকলাপকে একটি ঘটনা হিসাবে উল্লেখ করা হয়, তাই ঘটনা প্রবাহ। উদাহরণস্বরূপ, NASDAQ প্রতি সেকেন্ডে স্টক এবং পণ্যের মূল্যের আপডেট পায়। আপনার যদি এমন একটি অ্যাপ্লিকেশন থাকে যা স্টকের একটি নির্দিষ্ট সেট নিরীক্ষণ করে, আপনি সেই তথ্যটি কাছাকাছি বর্তমান-সময়ে পেতে চাইবেন। ফাইন্যান্স একটি API প্রদান করে যা NASDAQ থেকে টেনে নেয় এবং তাদের অ্যাপ্লিকেশন থেকে তথ্য (বা ঘটনা) পাঠায় (বা প্রবাহ) যেকোন অ্যাপ্লিকেশনে যার সদস্যতা নেয়। যে তথ্য পাঠানো হচ্ছে সেই সাথে সেই তথ্যের পরিবর্তনগুলি (স্টকের দাম) ঘটনাগুলো যখন একটি অ্যাপ্লিকেশনে সেগুলি বিতরণ করে সেই প্রক্রিয়াটি ঘটনা প্রবাহ।

এটা যেসব সমস্যাতে দৃষ্টিপাত করে

ঐতিহ্যগতভাবে, ফাইন্যান্স একক TCP অনুরোধ ব্যবহার করবে। এটি খুবই অকার্যকর হবে কারণ এটি প্রতিটি ইভেন্টের জন্য একটি সংযোগ তৈরি করতে হয়৷ তথ্য প্রকৃপক্ষে যত বাস্তব-সম্মত হয়ে উঠে, এই জাতীয় সমাধানকে স্কেল করা অকার্যকর হয়ে পড়ে। একবার সংযোগ খোলা এবং ঘটনাগুলোকে প্রবাহিত করার অনুমতি দেওয়া বাস্তব-সময়ে সংগ্রহের জন্য আদর্শ। উৎপন্ন তথ্যের পরিমাণ দ্রুতগতিতে বৃদ্ধি পাচ্ছে এবং সেই সাথে তথ্যের অবস্থা ক্রমাগত প্রবাহিত হচ্ছে। ডেভেলপার এবং ব্যবহারকারীদের কাছে বর্তমান-সময়ে সেই তথ্য দেখতে সক্ষম হতে হবে।

এটা কিভাবে সাহায্য করে

ঘটনা প্রবাহ তথ্য পরিবর্তনগুলিকে উৎস থেকে রিসিভারে যোগাযোগ করার অনুমতি দেয়। তথ্যের অনুরোধ করার জন্য পরিষেবাগুলির অপেক্ষা করার পরিবর্তে, পরিষেবাটি তার সমস্ত ঘটনা (বা কার্যকলাপ) ক্রমাগত প্রবাহিত করে। এক্ষেত্রে এটি তথ্যের কি হবে তা নিয়ে উদ্বিগ্ন নয়। এটি কেবল যা করতে হবে তা করে এবং এটি সম্প্রচার করে, এইভাবে অন্য যেকোনও পরিষেবা থেকে সম্পূর্ণ স্বাধীন থাকে।


সর্বশেষ পরিবর্তিত February 24, 2024: [bn] Update main branch with dev-bn (#2894) (19b78e4)