رپلیکیشن یعنی چه؟#
در رپلیکیشن، یک سرور اصلی (Primary یا Master) تغییرات را میپذیرد و این تغییرات خودکار روی یک یا چند سرور کپی (Replica یا Slave) هم اعمال میشود. نتیجه چند نسخهی تقریباً همزمان از همان داده است.
مثال#
سایت فروشگاهی شما در شب یلدا ترافیک سنگینی دارد. اگر همهی خواندنها روی یک سرور بروند، سایت کند میشود. با رپلیکیشن، نمایش محصولات از سرورهای کپی خوانده میشود و فقط ثبت سفارش روی سرور اصلی انجام میشود.
فایدهها#
- دسترسپذیری: اگر سرور اصلی خراب شود، یکی از کپیها جایش را میگیرد.
- سرعت: خواندن بین چند سرور تقسیم میشود.
- تحلیل: گزارشهای سنگین را میتوان روی کپی گرفت و سرور اصلی را درگیر نکرد.
انواع#
- ناهمگام: سرور اصلی منتظر کپی نمیماند؛ سریعتر، اما ممکن است لحظهای عقب بیفتد.
- همگام: تا کپی تأیید نکند، تراکنش کامل نمیشود؛ امنتر ولی کندتر.
اشتباه رایج#
رپلیکیشن بکاپ نیست. اگر کسی اشتباهی جدولی را حذف کند، این حذف سریع روی همهی کپیها هم اعمال میشود. بکاپ جداگانه همچنان لازم است.
چه زمانی لازم میشود؟#
برای سایت کوچک با چند صد بازدید در روز، معمولاً یک پایگاه دادهی خوب با بکاپ کافی است. وقتی سایت حیاتی میشود و توقف چند دقیقهای هم هزینه دارد، یا بار خواندن زیاد است، رپلیکیشن معنا پیدا میکند. راهاندازی و پایش درست آن مهارت میخواهد، پس بدون نیاز واقعی سراغش نروید.