TGViewer
C# Geeks (.NET) C# Geeks (.NET) @csharpgeeks · 548 subscribers
Post #142 73
💡راهکار (Solution)


الگوی Saga تراکنش‌ها را با تقسیم آن‌ها به مجموعه‌ای از تراکنش‌های محلی مدیریت می‌کند.
هر تراکنش محلی:

• کار خود را به‌صورت اتمی در یک سرویس انجام می‌دهد.
• پایگاه داده سرویس را به‌روزرسانی می‌کند.
• تراکنش بعدی را از طریق رویداد یا پیام آغاز می‌کند.
• اگر یک تراکنش محلی شکست بخورد، Saga مجموعه‌ای از تراکنش‌های جبرانی را اجرا می‌کند تا تغییرات تراکنش‌های قبلی را برگرداند.


🔑 مفاهیم کلیدی در الگوی Saga
(Key concepts in the Saga pattern)


تراکنش‌های قابل جبران (Compensable Transactions):

تراکنش‌هایی که می‌توان آن‌ها را توسط تراکنش‌های دیگر با اثر معکوس، جبران یا لغو کرد. اگر یک مرحله شکست بخورد، تراکنش‌های جبرانی تغییرات اعمال‌شده را برمی‌گردانند.

تراکنش محوری (Pivot Transaction):

نقطه بدون بازگشت در Saga است. بعد از موفقیت تراکنش محوری، تراکنش‌های جبرانی دیگر کاربردی ندارند و همه اقدامات بعدی باید برای رسیدن سیستم به حالت سازگار نهایی تکمیل شوند. تراکنش محوری می‌تواند:

• آخرین تراکنش قابل جبران باشد.
•اولین عملیات قابل تکرار (Retryable) در Saga باشد.

تراکنش‌های قابل تکرار (Retryable Transactions):

پس از تراکنش محوری اجرا می‌شوند، idempotent هستند و تضمین می‌کنند که حتی در صورت بروز خطاهای موقت، Saga به حالت سازگار برسد.
More from @csharpgeeks
  1. Sep 22, 2026یه مدتی قراره از دنیای NET. فاصله بگیرم، چون وقتشه برم سربازی. راستش نمیدونم این مدت رو چج…
  2. Sep 20, 2026🔥 حالا مشکل اصلی: Alert Storm فرض کن Database از دسترس خارج شده. ۱۰۰ Pod داری. هر Pod می‌…
  3. Sep 20, 2026🚨 طراحی سیستم Monitoring و Alerting در یک سیستم بزرگ فرض کن ساعت ۳ صبح است. سیستم شما با…
  4. Sep 19, 2026#Engineering_Leadership تصمیم نگرفتن هم یک تصمیم است یه چیز عجیب توی تیم‌های مهندسی: گاهی…
  5. Sep 19, 2026☑ چک‌لیست آماده‌سازی تیم، فرایندها و زیرساخت برای توسعه با AI توجه: هیچ چک‌لیستی جهان‌شمول…
  6. Sep 19, 2026📌پایان یک انتظار طولانی: اعتبارسنجی ناهمگام (Async Validation) در NET 11.
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 →