TGViewer
CodeVerse | دنیای برنامه نویسان CodeVerse | دنیای برنامه نویسان @codeverse_dev · 1.06K subscribers
Post #619 305
🚨 فرض کنید API پرداخت این درخواست را دریافت می‌کند:

POST /payments

سرور عملیات پرداخت را انجام می‌دهد...

اما قبل از اینکه پاسخ به کاربر برسد، Connection قطع می‌شود.

Frontend فکر می‌کند:

❌ «پرداخت انجام نشد.»

پس دوباره Request می‌فرستد.

حالا Server دو Request دریافت کرده است.

اگر سیستم Idempotency نداشته باشد:

Request #1 → Payment
Request #2 → Payment

ممکن است یک عملیات دوبار اجرا شود.

راه‌حل:

Idempotency-Key: 8f4c...

اینجا Server این Key را ذخیره می‌کند.

اگر همان درخواست دوباره رسید:

✅ نتیجه قبلی برگردانده می‌شود.

❌ عملیات دوباره اجرا نمی‌شود.

🎯 در سیستم‌های حساس، Retry و Idempotency باید کنار هم طراحی شوند.

💡 «دوباره تلاش کردن» بدون اینکه بدانیم عملیات قابل تکرار است یا نه، می‌تواند خودش منبع Bug باشد.

@CodeVerse_dev
  • 👍 7
  • ❤ 1
More from @codeverse_dev
  1. Oct 7, 2026👨‍💻 برنامه‌نویسی با AI راحت‌تر شده؛ پس چرا بعضی Developerها خسته‌تر شده‌اند؟ طبق نظرسنجی…
  2. Oct 7, 2026🚨 وردپرس 7.1.3 منتشر شد؛ این یکی را عقب نینداز وردپرس دیروز نسخه 7.1.3 را منتشر کرد؛ یک آ…
  3. Oct 6, 2026شرکت Google وارد یک درگیری جدی با ناشران شده ⚖️ رگولاتور رقابت لهستان اعلام کرده Google را…
  4. Oct 6, 2026اگر Windows 11 داری، قبل از نصب بعضی آپدیت‌ها حواست باشد ⚠️ مایکروسافت تأیید کرده آپدیت پی…
  5. Oct 6, 2026اگر Chrome استفاده می‌کنی، این آپدیت را جدی بگیر ⚡ نسخه Stable مرورگر Chrome برای دسکتاپ ب…
  6. Oct 6, 2026🖥 سازنده محتوایی؟ ویندوزت بدون این ۵ نرم‌افزار نصفه‌ست! خب راستشو بخوای، من خودم تا چند و…
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 →