آموزش چک کردن سلامتی Health Check در ASP.NET Core
آموزش چک کردن سلامتی Health Check در ASP.NET Core یکی دیگر از آموزش های گروه آموزشی پرووید می باشد که در این قسمت آن را به شما معرفی می کنیم. این بسته ی آموزشی نیز یکی از دوره های آموزشی دیگر که در حوزه ی فارسی سازی آموزش های انگلیسی تنظیم شده است می باشد. عنوان این بسته ی آموزشی چک کردن سلامتی در ASP.NET Core است که با نام اصلی ASP.NET Core Health Checks از شرکت Pluralsight منتشر شده است.
فریم ورک ASP.NET Core چیست؟
فریم ورک ASP.NET Core یک فریم ورک توسعه نرم افزارهای وب است که به صورت رایگان و Open Source در اختیار برنامه نویسان قرار می گیرد. پس از ASP.NET، فریم ورک ASP.NET Core توسط مایکروسافت مطرح شد. این فریم ورک به صورت ماژولار شبیه سازی شده است و می تواند بر روی دات نت فریم ورک و ویندوز و البته به صورت کراس پلتفرم با استفاده از .NET Core اجرا بگردد. البته در نسخه سوم از ASP.NET Core دیگر از .NET Framework پشتیبانی نمی شود و فقط امکان اجرا کردن بر روی .NET Core وجود دارد. یکی از نکات بسیار مهم در رابطه با فریم ورک ASP.NET Core بازنویسی کامل آن نسبت به نسخه قبلی است. در این فریم ورک دو مدل برنامه نویسی ASP.NET MVC در ASP.NET Web API در قالب یکسان ارائه می گردند.

البته علی رغم اینکه ASP.NET Core یک بازنویسی کامل نسبت به ASP.NET است بسیاری از مفاهیم مربوط به ASP.NET در آن وجود دارد و برنامه نویسانی که تجربه کار کردن با ASP.NET را دارند می توانند به سادگی با این فریم ورک نیز کار کنند. استفاده کردن از Nu Gate Package ها و پیاده سازی کاملاً ماژولار، پشتیبانی بسیار قوی از سیستمهای رایانش ابری از قبیل cloud و یک Request Pipeline کاملاً ماژولار و سبک وزن برای HTTP برخی از قابلیت های بسیار مهم فریم ورک ASP.NET Core می باشند. برای یادگیری هرچه بهتر این فریم ورک توصیه می کنیم که از بسته آموزش ویدئویی مفاهیم اولیه در ASP.NET Core دیدن کنید.
انجام Health Check در ASP.NET Core
یکی از موضوعات بسیار مهم در تولید نرم افزارهای وب با استفاده از فریم ورک ASP.NET Core مبحث Health Check و یا بررسی سلامتی نرم افزار می باشد. برای انجام این کار و به منظور عملیاتی از قبیل مانیتورینگ یک Middleware و Library های مرتبط با آن در اختیار برنامه نویس قرار می گیرد که تمامی زیرساخت و کامپوننت های مورد نظر برای انجام Health Check را در اختیار شما قرار میدهد.

Health Check ها از طریق HTTP Endpoint های مختلف در اختیار برنامه نویس قرار می گیرند. البته امکان پیکربندی کردن بسیاری از موضوعات مربوط به Health Check برای ایجاد کردن سناریوهای مختلف مانیتورینگ امکان پذیر است.
- استفاده کردن از Health Check ها توسط Container Orchestrator ها و Load Balancer ها برای بررسی کردن حالت یک اپلیکیشن امکان پذیر است. برای مثال یک Container Orchestrator ممکن است به یک Health Check شکست خورده، ریستارت کردن یک Container و یا متوقف کردن یک Deployment پاسخ بدهد. علاوه بر این یک Load Balancer می تواند با بررسی کردن Health Check ترافیک را از یک Instance شکست خورده از اپلیکیشن گرفته و به یک Instance سالم هدایت کند.
- سرعت استفاده شدن از مموری و دیسک و دیگر منابع فیزیکی سرور می توانند با بررسی کردند و مانیتور کردن Health Check ها انجام بشود.
- با استفاده از Health Check ها می توانیم Dependency های مختلف یک اپلیکیشن از قبیل دیتابیس و External Service Endpoint ها را مورد بررسی قرار بدهیم تا Availability آنها را کنترل کرده و از عملکرد صحیح آنها مطمئن شویم.
چگونه وابستگیهای دیتابیس و API را با Health Check پایش کنیم؟
در آموزش ASP.NET Core Health Checks یاد میگیرید چگونه وضعیت بخشهای مختلف یک برنامه را بررسی کنید تا مشخص شود سرویسها و وابستگیهای آن همچنان قابل استفاده هستند یا خیر. برای مثال، ممکن است خود Web API اجرا شود، اما اتصال آن به دیتابیس قطع شده باشد یا یک API خارجی پاسخ ندهد. با پیکربندی Health Check برای Database Dependency و API Dependency میتوانید این وضعیتها را جداگانه ارزیابی کنید و اطلاعات دقیقتری درباره سلامت برنامه به دست آورید.
بخش عملی آموزش از تنظیمات اولیه شروع میشود و سپس به سفارشیسازی پاسخها میرسد. یاد میگیرید چگونه کدهای وضعیت HTTP و محتوای Response را تغییر دهید تا مصرفکنندگان این اطلاعات بتوانند نتیجه بررسی را بهتر تفسیر کنند. همچنین با استفاده از برچسبها میتوانید Health Checkها را فیلتر کنید؛ قابلیتی که هنگام بررسی مجموعهای از وابستگیها یا تفکیک گروههای مختلف کنترل اهمیت پیدا میکند. این مباحث برای توسعهدهندگانی مفید است که باید وضعیت سرویسهای ASP.NET Core را در محیطهای عملیاتی قابل مشاهده کنند.
طراحی Health Check سفارشی و مدیریت امن اطلاعات سلامت
همه بررسیهای موردنیاز یک برنامه را نمیتوان با کنترلهای آماده پوشش داد. در این آموزش، روش نوشتن Health Check سفارشی را یاد میگیرید تا منطق بررسی متناسب با نیازهای اختصاصی اپلیکیشن را پیادهسازی کنید. آموزش همچنین نحوه توزیع یک Health Check Library را بررسی میکند؛ بنابراین میتوانید منطق مشترک را به شکلی سازماندهی کنید که در برنامههای دیگر نیز قابل استفاده باشد. اضافه کردن Health Check UI نیز بخشی از مباحث است و امکان مشاهده وضعیت بررسیها را از طریق یک رابط کاربری فراهم میکند.
انتشار اطلاعات مربوط به سلامت سرویس باید با ملاحظات امنیتی همراه باشد؛ زیرا جزئیات وابستگیها یا وضعیت داخلی برنامه همیشه نباید در دسترس همه درخواستکنندگان قرار بگیرد. به همین دلیل، این آموزش ایمنسازی نقطه پایانی Health Check و انتشار اطلاعات مرتبط با آن را نیز پوشش میدهد. آشنایی با این موضوعات به توسعهدهنده کمک میکند میان قابلیت پایش سرویس و محدود کردن دسترسی به اطلاعات داخلی تعادل برقرار کند. این دانش برای آمادهسازی APIها جهت مانیتورینگ و نگهداری در محیطهای واقعی کاربرد دارد.
سرفصل مطالب آموزش ویدئویی چک کردن سلامتی (Health Check) در ASP.NET Core
فصل اول: مقدمه این دوره آموزشی
- مقدمه این دوره آموزشی
فصل دوم: پیاده سازی بررسی های بهداشتی درASP NET Core
- Health Check چیست و چرا باید از آنها استفاده کنید؟
- بررسی Health Check ها
- پیکربندی اولیه برای بررسی Health Check ها
- پیکربندی Health Check ها در Database Dependency
- پیکربندی Health Check ها در API Dependency
- سفارشی سازی کدهای وضعیت HTTP و Response
- فیلتر کردن Health Check با استفاده از برچسب ها
- نوشتن Health Check سفارشی خودتان
- توزیع کردن یک Health Check Library
- اضافه کردن یک Health Check UI
- ایمن سازی نقطه پایان Health Check
- انتشار اطلاعات مربوط به Health Check
- موارد استفاده از Health Check
- جمع بندی

