Ahmed Ghazey
Ahmed Ghazey

@AhmedGhazey

6 تغريدة 5 قراءة Jan 23, 2024
ثريد مقدمة عن ال event driven و محاولة فهم ال message queue و ال event stream
خلينا نوضح فى الاول يعنى ايه message و يعنى ايه event
Message هى كلمة عامة بنستخدمها عشان نوصف لوكشة بيانات مع بعضها مبعوتة من micro services او component لواحدة تانية
و طبعاً الهدف هو asynchronous communication
ال message دى ممكن نصنّفها لأربعة category
١- command message و دى غالبا بتبقى شايلة معلومات عشان ال service اللى هتستقبل تنفذ action معين
٢- query message و دى بتبقى غالبا عايزة ال service/component اللى هتستقبلها ترجع شوية بيانات
٣- reply message و دى ان server/recipient يبعت message رد على request/query
٤- transactional message و دى بقى بتستخدم لما تكون ال message جزء من transaction و لازم تبقى processed بطريقة reliable و غالباً بتبقى atomic
معانا بقى ال event غالبا بيعبر عن حاجة حصلت button is clicked ، payment is done , user registered حاجات من هذا القبيل يعنى
لما ال event بيتحرك فى ال system بيبدو كأنه message و الحقيقة انه فعلا نوعا ما message
و غالبا هتسمع لو بتتكلم على event driven architecture عن ال event و ال message بمعنى واحد
بس الحقيقة هى ان كل event يعتبر message بس العكس مش صحيح
كل من ال message queues و ال event streams فى الآخر هما مكان مؤقت بنستخدمه عشان نخزن شوية معلومات لحد ما يحصلهم processing من ال consumers
كل من ال message queue و ال event streams بيتكونوا من فكرة تقريباً واحدة حد هي produce و حد هي consume
تفاصيل الحاجات دى هبقى اكتبها فى ثريد تانية بشكل اكتر تفصيل
ملحوظة كدة ال event بالمعنى الحرفى بتعبر عن حاجة حصلت و انتهت و مش هتتغير
أتمنى كده ان الثريد دى كانت مقدمة خفيفة لذيذة عشان نتكلم بشكل اكتر تفصيل فى القادم ان شاء الله
هى دى اللى هنتكلم عنها بالتفصيل

جاري تحميل الاقتراحات...