مفاهیم مرتبط با rabbitMQ

پرسیده شده
فعالیت 1033 روز پیش
دیده شده 494 بار
0

سلاااام . . . 

معماری های توسعه >> monolitic , microservice 

 

monolitic => همه برنامه ها یکجا تعریف میشوند . 

microservice => برنامه ها به بخش های جدا از هم تقسیم میشوند .

 

producer => درخواست کننده ، consumer => گیرنده درخواست (سرور)

 

fault isolation => اگر مشکلی توی برنامه بوجود بیاد مربوط به خود میکروسرویس هست (نیازی نیست کل برنامه بررسی شود)

 

broker => بخش های مختلف برنامه رو به هم متصل میکنه 

>> در خواست هارو توی صف Enqueue میکنه 

>> وقتی درخواست ها یا پیام ها خوانده میشوند Dequeue میشوند

 

exchange => تصمیم میگیره هر درخواست توی کدوم صف قرار بگیره 

>> به ارتباط بین exchange و queue >>>   انقیاد میگویند ( binding )
 

انواع exchange

 

>> Direct : با استفاده از routing-key درخواست ها بین صف ها تقسیم میشوند(مشخص میکنیم هر نوع درخواست به کدام صف تعلق بگیرد )

 

>> fanout : درخواست توی تمام صف ها کپی میشود 

 

>> topic : با توجه به یکسری پترن ،‌الگو و کلمات درخواست های بین صف ها تقسیم میشوند (Regex) 

-----------------------------------------------------------------------

تصویر مربوطه آپلود شد .

 

موفق باشید ? 

فایل پیوست

Reza Mobaraki
Reza Mobaraki

8 خرداد 00

0
حذف شده

نوع بعدی exhange >>
 

headers >> که به صورت key-value مقدار میگیرد 
توی header مقدار x-match مقادیر any یا all را میگیرد 

 

any => اگر یکی از مقادیر مطابقت داشت ارسال شود 
all => باید همه مقادیر مطابقت داشته باشد تا ارسال شون 

-------------------------

topic =>‌ با استفاده از تکنیک دات نوتیشن (Dot Notation) استفاده میشود 
 قبل از ارسال الگو هارو بررسی میکنه هرجا مطابقت ایجاد شود پیام ارسال میشود .

فایل پیوست

Reza Mobaraki

توسط

Reza Mobaraki

8 خرداد 00