خطا Fault Tolerance چیست ؟ >تحمل خطا به معنای عدم تاخیر در ارائه خدمات است و توانایی مقاومت در برابر مشکلات و خطاها در درجه اول سخت افزاری قرار دارد و به عبارت دیگر، تحمل خطا( به اختصار FT) یک ویژگی سیستم عامل است که به شما امکان می دهد در صورت بروز مشکل از تجهیزات جایگزین استفاده کنید و به طور خودکار بدون تاخیر( یا با تاخیر بسیار کوتاه) به خدمات ادامه دهید و نکته ای که در FT وجود دارد این است که در صورت بروز خطا، زمان توقف سرویس ابتدا صفر یا بسیار کوتاه می شود و سپس عملیات تعویض به صورت خودکار و بدون عوامل انسانی انجام می شود. مدیران می توانند نقص ها را در زمان مناسب بررسی و رفع کنند. جهت کسب اطلاعات بیشتر در رابطه با خطا fault tolerance تا انتهای این مطلب با ما همراه باشید
Fault tolerance چیست؟
تحمل خطای شبکه به این معنی است که در صورت خرابی یک یا چند جزء، سیستم( رایانه ها، شبکه ها، خوشه های ابری و غیره) می تواند بدون وقفه به کار خود ادامه دهد. به عبارت دیگر، این یک ویژگی است که به سیستم اجازه می دهد حتی در صورت وجود مشکل در قطعه(یک یا چند مشکل) به طور عادی به کار خود ادامه دهد . ( خرید هاست )هدف از ایجاد یک سیستم مقاوم در برابر خطا، جلوگیری از وقفه در نقاط خراب و اطمینان از در دسترس بودن و تداوم برنامهها یا سیستمهای تجاری است .
سیستم های مقاوم به خطا از اجزای پشتیبان استفاده می کنند که به طور خودکار اجزای خراب را جایگزین می کنند.
تحمل خطا می تواند در استراتژی بازیابی فاجعه نقش داشته باشد.برای مثال، سیستمهای تحمل ابر با اجزای اضافی در ابر می توانند به سرعت سیستم های حیاتی را بازیابی کنند، حتی اگر یک فاجعه طبیعی یا انسان ساز زیر ساخت های فناوری اطلاعات را از بین ببرد.
دلایل نیاز به تحمل خطا
از جمله دلایل مطرح شده برای این موضوع می تواند موارد زیر باشد:
۱٫قابلیت اطمینان: عملکرد سیستم بدون وقفه
۲٫دسترسی: دسترسی به اطلاعات در هر زمان که کاربر بخواهد
۳٫امنیت: جلوگیری از دسترسی های غیر مجاز توسط افراد ناشناس
طراحی مقاوم در برابر خطا
طراحی مقاوم در برابر خطا طرحی است که به سیستم اجازه می دهد در همان سطح یا پایین تر به کار خود ادامه دهد و در صورت خرابی در برخی از قسمت ها از خراب شدن سیستم جلوگیری کند. این طرح معمولاً به بحث هایی در معماری کامپیوتر اشاره دارد و اگر عملکرد رایانه کاهش یابد ، به کار خود ادامه می دهد و باعث کاهش توان عملیاتی یا افزایش زمان پاسخ می شود .
دلایل به وجود آمدن خطا
خطاهای نرم افزاری یا سخت افزاری
دست یابی های غیرقانونی
شیوه های تحمل پذیری اشکال
به طور کلی، تحمل خطا به دو روش کلی قابل دستیابی است:
- خود تثبیت
نسخه برداری
خود تثبیت
در این روش طراحان موقعیت هایی را که احتمال دارد باعث از کار افتادن سیستم شوند را پیدا می کنند و سیستم را برای مقابله با این شرایط طراحی می کنند. در نهایت هدف اصلی طراحان در این روش دستیابی به یک سیستم خود تثبیت کننده است تا در مقابل برخی از عوامل شکست نخورد
معایب: مشکلات اصلی این روش این است که تعدادی خطای بحرانی در سیستم رخ می دهد و یا هزینه یک سیستم بسیار قابل اعتماد بسیار بالا است.
نسخه برداری
در این روش سیستم به گونه ای طراحی شده است که در صورت بروز هرگونه خطای بحرانی به حالت ایمن قبلی بازگردد. هدف این روش این است که یک نسخه پشتیبان از حالت قبلی خود تهیه کند و در صورت نیاز کابربر بتواند آن را بازیابی کند. این روش نسبت به روش خود تثبیت معایب کمتری دارد
روش های تحمل پذیری اشکال در نرم افزار
روش های اشکال زدایی در زمینه نرم افزار به سه دسته کلی تقسیم می شوند:
- جلوگیری یا اجتناب از خطا
- عیب یابی
- تخمین خطا
تحمل خطا
جلوگیری یا اجتناب از خطا
این روش دارای هدف های شبیه به خود تثبیت است و همچنین نرم افزاری بدون خطا طراحی شده است.
عیب یابی( حذف خطا)
این رویکرد بدین صورت است که پس از طراحی نرم افزار، تست های زیادی بر روی آن انجام می شود تا برنامه نهایی بدون هیچ خطایی ساخته شود.
پیش بینی خطا
برای پیش بینی خطاهای احتمالی در نرم افزار و وضعیت وقوع آن ها و خطرات احتمالی ناشی از آن ها است.
تحمل خطا
در این روش طراحان با این تصور که خطا وجود دارد سیستم را طراحی می کنند تا سیستم در این وضعیت به درستی کار کند.
عملکرد تحمل پذیری اشکال
در صورت بروز خطا دو راه حل وجود دارد:
مدیریت خطا: سعی می کند از بروز خطاهای بیشتر قبل از خرابکاری و رسیدن به مرحله بحرانی جلوگیری کند.
پردازش خطا: در این روش سیستم دو گزینه دارد، یا سعی می کند(هاست) خطایی به نام بازیابی خطا را پاک کند یا با کپی کردن چیزی که به آن بازیابی خطا می گویند، این کار را انجام می دهد.