Blog top image

use case of event driven architecture


যে সব কারণে ইভেন্ট ড্রিভেন আর্কিটেকচার ব্যবহার করা হয় 


ফায়ার এন্ড ফরগেট 

প্রোডিউসার ইভেন্ট ফায়ার করে তারপর সেই কাজকে ভুলে যায়। কারণ এই ইভেন্টের রিসিভার কেউ প্রডিউসারকে সরাসরি ডাটা রিটার্ন করবে না। 


রিলায়েবল ডেলিভারি 

প্রোডিউসার ইভেন্ট ফায়ার করলে এটা গ্যারান্টেড যে ইভেন্ট হারিয়ে যাবে না, কেউ না কেউ সেটা প্রসেস করবে এবং সেই ইভেন্ট মেজেস ব্রোকারে স্টোর করার ব্যবস্থা আছে। 


ইনফিনিট ডাটা স্ট্রিম 

যদি এমন সিস্টেম হয় সেখান থেকে ইনফিনিট ডাটা স্ট্রিম আসতে থাকে, তাহলে ইভেন্ট ড্রিভেন হচ্ছে তার আদর্শ মডেল। এখানে প্রোডিউসার এর সকল ডাটা মেসেজ ব্রোকারের মাধ্যমে প্রসেস হতে থাকবে। 


এনোমালি ডিডেকশন বা প্যাটার্ন রিকগনিশন

যেহেতু সকল রিকোয়েস্ট মেসেজ ব্রোকার হয়ে আসে, তাই  এনোমালি ডিডেকশন বা প্যাটার্ন রিকগনিশন এর জন্য ইভেন্ট ড্রিভেন আর্কিটেকচার পারফেক্ট।  কারণ মেসেজ ব্রোকার থেকে সহজেই রিকোয়েস্ট এর প্যাটার্ন বের করা যায়। 


ব্রডকাস্টিং 

ইভেন্ট প্রোডিউসার এর জানা দরকার নাই, কে তার ইভেন্ট কনজুম করবে। তাই ব্রডকাস্টিং সিনারিওতে ইভেন্ট ড্রিভেন আর্কিটেকচার পারফেক্ট চয়েস। 


বাফারিং 

যখন অনেক বেশি রিকোয়েস্ট আসে, তখন মেসেজ ব্রোকার ইভেন্ট বাফারিং করতে পারে। তাই রিকোয়েস্ট বাফারিং করতে হয় এমন ক্ষেত্রে ইভেন্ট ড্রিভেন আর্কিটেকচার ন্যাচারালি কাজ করে


ইভেন্ট ডেলিভারি প্যাটার্ন 


ইভেন্ট স্ট্রিমিং 

- রিলাইএবল ডেলিভারি 

- এনোমালি ডিডেকশন বা প্যাটার্ন রিকগনিশন

পাব সাব 

- টেম্পোরারি স্টোরেজ 

- ফায়ার এন্ড ফরগেট  

- ব্রডকাস্টিং 

- বাফারিং 

- ইনফিনিট ডাটা স্ট্রিম