آشنایی با عملکرد Performance Monitor

در این درس از دوره SQL Server Essentials، به آموزش استفاده از ابزار Performance Monitor برای نظارت بر عملکرد SQL Server پرداخته میشود. در این آموزش، نحوه اضافه کردن شمارندهها مانند “User Connections” به Performance Monitor و استفاده از آنها برای پیگیری تعداد اتصالات کاربران به SQL Server بررسی میشود. این ابزار به مدیران دیتابیس کمک میکند تا عملکرد سرور را در زمان واقعی نظارت کرده و در صورت لزوم برای بهینهسازی منابع و حل مشکلات عملکردی اقدام کنند. علاوه بر این، روشهای مختلف تنظیم مقیاس و نمایش نمودارها برای مشاهده دقیقتر دادهها آموزش داده میشود. این درس برای کسانی که میخواهند بر عملکرد SQL Server نظارت دقیقتری داشته باشند و در مدیریت سرور حرفهایتر عمل کنند، بسیار مفید است.
در این بخش من میخوام درباره استفاده از Performance Monitor به منظور مشاهده و پیگیری گراف کانتر ها یا شمارنده هایی که به Microsoft SQL Server 2016 مربوط میشه، صحبت کنم. بنابراین از منو استارت، Performance Monitorرو به صورت مستقیم جستجو میکنم و پیش میرم و اون رو باز میکنم. اجازه بدین با کلیک روی maximize، بزرگش کنم و در نمای درختی در سمت چپ، Performance Monitorرو انتخاب میکنم و به صورت پیش فرض وارد یک شمارنده میشیم که سرعت زمانی پردازشگر رو که در این کامپیوتر در حال اجراست، نشون میده، در فضای نمودار اگه شما راست کلیک کنین، گزینه بالایی که شما میبینین، Add Counters هست و ما تعداد خیلی، خیلی، خیلی زیادی شمارنده رو در این پنجره add counters میبینیم.
اگه به سمت بالای این پانل بریم، باید یک تعدادی شمارنده که مربوط به اس کیو ال سرور هست رو ببینیم، که اینها بر اساس حروف الفبا ذخیره شدن. در این لیست، در هر حال، همونطور که اسامی رو می بینید، با اس کیو ال نامیده نشدن، اون ms sql نامیده شده که پایه ای برای دو حرف اول ساختار ترکیبی کلمات Microsoft و SQL هست. بنابراین چونکه این پانل بر اساس حروف الفبا هستش من باید به زیر حرف m نگاه کنم. یک تعداد گروه شمارنده رو می بینیم که با MSSQL شروع شدن و اینجا وجود داره. در ابتدا من میخوام این یکی که با General Statistics همراه شده رو ببینم. بنابراین اون رو با کلیک کردن روی فلش رو به پایین باز میکنم. همونطور که می بینید شمارنده های متفاوتی در زیر General Statistics در دسترس مون قرار دارن و الان اونها رو مشاهده میکنیم. اگه که به سمت پایین اسکرول کنم و برم user connections رو میبینم.
روی اون کلیک میکنم و بعد از کلیک در حالتی که بصورت انتخاب درومده، دکمه ادد رو میزنم و بعدش هم رو اوکی کلیک می کنم، و بنابراین حالا شمارنده دیگه ای درست این زیربا نام User Connectionsدارم و می بینید که من در حال حاضر 2 مقدار رو برای شمارنده Performance Monitor نگه داشتم، اینطوی بگم اگه به ستون Counter در اینجا دقت کنید دو شمارنده با نام های processor time% و User Connections می بینید، نمودار اون در این زیر به سمت پایین هست، من میخوام که شاید بزرگتر یا حداقل اش یکم بزرگتر باشه، بنابراین تنها کاری که کافیه انجام بدم اینه که همین جا روی اسم شمارندش راست کلیک کنم و Scale Selected Counters رو انتخاب میکنم یعنی اینکه به نرم افزار بگم شمارنده انتخاب شده رو در مقیاس بزرگتری نشون بده و حالا اون یک مقیاس 10 رو اضافه کرده. بنابراین حتی اگه مقدار فقط 2 باشه، اون در 10 ضرب میشه و نمودار راحتتر قابل خوندن هست.
بنابراین اگه این شمارنده User Connections تعداد اتصالات کاربرانمون هست ما باید بتونیم یک connection جدید ایجاد کنیم و بعد از اون اطلاعاتی که نمودار نشون میده رو ببینیم، که با تعداد جدیدی از کانکشن ارتباط کاربران شمارنده و بالطبع گرافش چه تغییری می کنه. بنابراین من پیش میرم و Management Studio رو باز میکنم و یک connection جدید ایجاد میکنم و حالا به پنجره، ابزار Performance Monitor برمیگردم و میبینم که بله، در حقیقت شمارنده افزایش پیدا کرده و حالا در مقدار 3 هست.
بنابراین من مقدار کانکشن های 2 داشتم و من حالا که یک کانکشن بیشتر ایجاد کردم، حالا مقدار 3 کانکشن رو دارم. مطمئنا تعداد اتصالات چیزایی هست که شما در یک محیط تولید حالا هر چیزی که کاربران باید برای کار کردن به سرور متصل بشن، دقیقا اون چیزی هست که برای نظارت، بعنوان یک مسئول و پشتیبان سرور میخواین و بهش نیاز دارید. اون یکی از چیزهایی هست که نیازی نیست به دنبال مقدار دقیق باشین اما هر گونه نوسان بزرگ میتونه برای شما بعنوان مدیر شبکه خیلی جالب و حتی قابل توجه هم باشه.
اگه به هر دلیلی تعداد اتصالات به طور چشمگیری در هر نقطه شروع به افزایش کرد، اون میتونه علامت مشکل امنیتی باشه، و همچنین اگه تعداد اتصالات به طور چشمگیری کاهش یافت و به خصوص اگه به 0 رسید نشان از خاموشی sql server هست یا اینکه اتصالات شبکه ای در سرور اس کیو ال سرورتون و یا حتی در مسیر سرور شکسته شده. بنابراین نظارت بر اتصال کاربران یک چیز خیلی کاربردی بنظر میرسه که انجام دادیم. اجازه بدین برگردیم و به تعداد بیشتری از اون کانترهای نگاهی بیندازیم. دوباره کلیک راست میکنیم و روی گزینه ادد کانتر میزنیم و شما میتونین این امکان رو داشته باشین که تعداد زیادی شمارنده، به هر اندازه که در یک زمان بخواین، اضافه کنین.
در حال حاضر اگه شما شمارنده های زیادی با هم در یک زمان داشته باشین، باید به این نکته هم دقت کنین که مشاهده بسیاری از نقاط نمودار هر کانتر، در آن واحد به سختی قابل خوندن میشن. همونطور که من به سمت بالای لیست در این پانل اسکرول میکنم و میرم، تعداد زیادی از دسته های مختلف بسیاری رو میبینم. که هر طبقه چندین شمارنده در زیر اون هست. بنابراین جمع تعداد شمارنده ها به هزار یا ده هزار هم برسه و هر کدام از اونها یک هدف متفاوت دارن که هر هدف طوری برنامه ریزی شده که فقط بر اساس اونچه که شما در نظارت انتظار دارین، عمل کنه و اطلاعات مورد نیازتون رو در قالب گراف ارائه بده. بنابراین اگه شما مشکلاتی با یک backup device خاص دارین، میتونین سمت راست اینجا رو باز کنین و به Device Throughput per second نگاه بندازین و دوباره، نوع شمارنده در جایی که لازم نیست به دنبال یک مقدار خاص درش باشیم ولی بهرحال می بیند که این ابزارها در اینجا وجود دارن. اما باز هم بعنوان مدیر سرور هر افزایش یا کاهش بزرگ، میتونه برامون خیلی جالب توجه باشه.
بنابراین اگه شما بخواین به backup devices تون نظارت داشته باشین، اینجا یک شمارنده خوب وجود داره که اون رو انجام میده و بسیار و بسیار دیگه از شمارنده ها در اینجا برای شما در دسترسن. همه اونها، به صورت نسبتا کاملی در وبسایت مایکروسافت ثبت شدن. همچنین اگه شما دنبال اطلاعاتی هستید در مورد اینکه دقیقا چه نوع شمارنده خاصی رو میخاید، براحتی میتونین به شرح سریعی در ارتباط با نیازتون در وب سایت مایکروسافت هم برسید. شما همچنین می تونید شرح کاملی از کانترها رو در همین رابط کاربری هم بدست بیارید. پس اگه شما یکی از اونها رو باز کنین و یک شمارنده دلخواه از داخل لیستش انتخاب کنین؛ بعدش درست در این پایین دکمه ای با نام Description option رو خواهید دید که از اسمش پیداست می تونه توضیحات کاملی رو در مورد این آپشن بهمون ارائه بده.
بنابراین اگه بیام و تیک چک باکس اون رو در حالت فعال بذارم اون توضیحات دارن میگن که این کانتر کل زمان اجرا رو می تونه در میکروثانیه بهمون بگه و این میتونه برای اینکه بعنوان مدیر شبکه بتونیم از هر چیزی، که زمان رو اندازه گیری کنه آگاه باشیم در پیشرفتمون خیلی تاثیر گذار باشه.
خوب می دونید که گاهی اوقات زمان در ثانیه اندازه گیری میشه. گاهی اوقات هم در میلی ثانیه، گاهی اوقات هم در میکروثانیه. بنابراین ما فهمیدیم که این یکی، به اونچه که در چارچوب زمانی برای یک شمارنده خاص استفاده میشه اگاه هست و نهایتا بهترین راه برای انجام این کار، یعنی فهمیدن اینکه یک کانتر چه دیتیلی داره، استفاده از چک باکس Show Descriptionدر پایین این پنجره هست یا اینکه بریم به داکیومنت رسمی Microsoft در وب سایتش و اونجا توضیحات کانتر های مد نظرمون رو بصورت آنلاین پیدا کنیم.