رپلیکیشن یعنی چه؟#

در رپلیکیشن، یک سرور اصلی (Primary یا Master) تغییرات را می‌پذیرد و این تغییرات خودکار روی یک یا چند سرور کپی (Replica یا Slave) هم اعمال می‌شود. نتیجه چند نسخه‌ی تقریباً هم‌زمان از همان داده است.

مثال#

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

فایده‌ها#

  • دسترس‌پذیری: اگر سرور اصلی خراب شود، یکی از کپی‌ها جایش را می‌گیرد.
  • سرعت: خواندن بین چند سرور تقسیم می‌شود.
  • تحلیل: گزارش‌های سنگین را می‌توان روی کپی گرفت و سرور اصلی را درگیر نکرد.

انواع#

  • ناهمگام: سرور اصلی منتظر کپی نمی‌ماند؛ سریع‌تر، اما ممکن است لحظه‌ای عقب بیفتد.
  • همگام: تا کپی تأیید نکند، تراکنش کامل نمی‌شود؛ امن‌تر ولی کندتر.

اشتباه رایج#

رپلیکیشن بکاپ نیست. اگر کسی اشتباهی جدولی را حذف کند، این حذف سریع روی همه‌ی کپی‌ها هم اعمال می‌شود. بکاپ جداگانه همچنان لازم است.

چه زمانی لازم می‌شود؟#

برای سایت کوچک با چند صد بازدید در روز، معمولاً یک پایگاه داده‌ی خوب با بکاپ کافی است. وقتی سایت حیاتی می‌شود و توقف چند دقیقه‌ای هم هزینه دارد، یا بار خواندن زیاد است، رپلیکیشن معنا پیدا می‌کند. راه‌اندازی و پایش درست آن مهارت می‌خواهد، پس بدون نیاز واقعی سراغش نروید.