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

Failover چیست؟ عملکرد آن به چه صورت است؟

Failover مکانیزمی است که در صورت از کار افتادن یک سرور یا سرویس، به‌صورت خودکار بار کاری را به یک سیستم جایگزین (Backup) منتقل می‌کند تا سرویس بدون وقفه محسوس به کار خود ادامه دهد. این قابلیت یکی از پایه‌های اصلی معماری‌های با در دسترس‌بودن بالا (High Availability) است.

Failover چطور کار می‌کند؟

معمولاً یک سیستم مانیتورینگ به‌صورت مداوم سلامت سرور اصلی (Primary) را بررسی می‌کند (از طریق Heartbeat یا Health Check). به‌محض تشخیص خرابی یا عدم پاسخ‌گویی سرور اصلی، ترافیک به‌صورت خودکار به سرور پشتیبان (Secondary) هدایت می‌شود؛ این انتقال می‌تواند از طریق تغییر DNS، سوییچ IP، یا لود بالانسر انجام شود.

انواع Failover

  • Active-Passive: سرور پشتیبان در حالت آماده‌باش می‌ماند و فقط زمانی فعال می‌شود که سرور اصلی از کار بیفتد.
  • Active-Active: هر دو سرور همزمان فعال هستند و بار بین آن‌ها تقسیم می‌شود؛ اگر یکی از کار بیفتد، دیگری بدون وقفه ادامه می‌دهد.

Failover در برابر Load Balancing

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

چرا Failover مهم است؟

برای هر سرویسی که قطعی آن هزینه مالی یا اعتباری دارد (فروشگاه آنلاین، سرویس پرداخت، اپلیکیشن پرکاربرد)، حتی چند دقیقه Downtime می‌تواند خسارت قابل‌توجهی ایجاد کند. Failover این ریسک را با داشتن یک نسخه پشتیبان همیشه‌آماده به حداقل می‌رساند.

پیاده‌سازی ساده Failover

برای پروژه‌های کوچک‌تر، می‌توانید با دو سرور مجازی در دو لوکیشن مختلف و یک سرویس مانیتورینگ (که در صورت قطعی سرور اول، رکورد DNS را به سرور دوم تغییر می‌دهد) یک سیستم Failover ابتدایی راه‌اندازی کنید.