سلام.
یکی از راه هایی که میتونید استفاده کنید dns failover هست.
به این صورت که یک سرور ثالث دائما در حال چک کردن سرور های شما باشه ( تنها چک کردن در دسترس بودن سرور در شبکه مد نظر نیست. چک کردن درست کار کردن سرویس ها و ...) و بلافاصله بعد از غیر قابل استفاده شدن یک سرور، سرور دوم رو جایگزین کنه. توی این روش به کلاستر کردن پایگاه داده نیاز دارید. یکی از عیوب بارز استفاده از این روش این هست که زمان کشِ dns شما باید شدیدا پایین باشه وگرنه با مشکل جدی روبرو خواهید شد. با پایین آوردن زمان کش هم کاربر هر چند ثانیه یک کوئری dns ارسال خواهد کرد که منجر به کندی سرور خواهد بود. ولی خب بی دردسر ترین راه هم همین هست.
راه دوم کلاستر کردن وب سرور دو یا چند سرور هست که به این روش failover cluster گفته میشه.
اطلاعات تکمیلی رو اینجا میتونید بخونید:
Simple Apache failover cluster on Ubuntu with config synchronization | Laurent Bel's blogging
همچنین اینجا یک مثال خوب و عملی برای این مورد زده شده:
Scaling Wordpress and MySQL on Multiple Servers for Performance | Severalnines