TGViewer
DotNet | دات نت DotNet | دات نت @dotnetcode · 1.22K subscribers
Post #3000 1.09K

Forwarded from Learning With M (Masoud DaneshPour)

امروز می‌خوام در مورد Exchange ها در RabbitMQ براتون بگم. Exchange ها مثل پستچی‌های پیام‌رسان عمل می‌کنن و تصمیم می‌گیرن پیام‌ها رو چطوری به صف‌ها (Queue) برسونن. بیاید ببینیم هر کدوم چیکار می‌کنن:

Direct Exchange 🎯
کارش چیه؟
پیام‌ها رو فقط به صف‌هایی می‌فرسته که کلید مسیریابی (Routing Key) دقیقاً همون چیزی باشه که تعیین کردیم.

کی استفاده کنیم؟
وقتی می‌خوایم پیام‌ها رو دقیقاً به یک صف خاص برسونیم. مثلاً پیام‌های "سفارش جدید" فقط به صف "پردازش سفارش" برن.

مثال:
Routing Key: order.created ➡️ Queue: order_queue

Fanout Exchange 📢
کارش چیه؟
پیام‌ها رو به همه صف‌های متصل شده می‌فرسته، بدون توجه به کلید مسیریابی.

کی استفاده کنیم؟
وقتی می‌خوایم یک پیام رو به چندین صف ارسال کنیم. مثلاً ارسال اطلاع‌رسانی به همه گروه های کاربران.

مثال:
پیام: "تخفیف ویژه!" ➡️ Queue: user_group1_queue, user_group2_queue, user_group3_queue

Topic Exchange 🌐
کارش چیه؟
پیام‌ها رو بر اساس الگوهای کلید مسیریابی ارسال می‌کنه. مثلاً می‌تونیم از wildcard (* و #) استفاده کنیم.

کی استفاده کنیم؟
وقتی می‌خوایم پیام‌ها رو بر اساس موضوع‌های مختلف دسته‌بندی کنیم. مثلاً خطاهای سیستم (error.*) یا لاگ‌های عمومی (log.#).

مثال:
Routing Key: error.database ➡️ Queue: error_queue
  • 👍 2
  • ❤ 1
More from @dotnetcode
  1. Sep 16, 2026ورک‌شاپ «AI Agents in C# (MAF)» در این ورک‌شاپ به بررسی امکانات جدید برنامه‌نویسی با کتابخ…
  2. Jul 10, 2026#مهندس_فکر_کن قسمت:4️⃣ 🎯مصاحبه‌کننده: ءCache Stampede چیست؟ فرض کن یک کلید در Cache داری:…
  3. Jun 12, 20261. Indexes منابع پیشنهادی این چالش که برای من اینها جذاب بوده و هست. A. Designing Data-Int…
  4. Jun 9, 2026آینده هوش مصنوعی و مهندسی کامپیوتر هوش مصنوعی مهندسی را نابود نمی‌کند، اما در سکوت در حال…
  5. Jun 4, 2026تحولی بزرگ در دنیای سی‌شارپ: ویژگی هیجان‌انگیز Union Types در C# 15! بالاخره یکی از جذاب‌ت…
  6. Feb 8, 2026👩‍💻 پستگرس رو ۲.۵ برابر سریع‌تر کن! تصور کن مغز متفکر دیتابیست (Parser) رو بدی دست هوش م…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →