صورت مسئله:
نظارت بر Connection های باز و بسته شده و آگاهی از تعداد Connection ها در Connection Pool یا منبع ذخیره سازی Connection ها:
<hr>
اصول کار:
استفاده از ابزارهای Performance Monitor ویندوز و SQL Profiler اس کیو ال سرور.
توضیحات:
در ادامه به توضیح چگونگی نظارت بر Connection Pooling ها در SQL Server و پرووایدرهای ODBC دات نت فریم ورک پرداخته خواهد شد.
توجه مهم: از این به بعد، به جای واژه نظارت، از کلمه Monitoring استفاده خواهد شد.
:SQL Server
Monitoring بر روی Connection ها و Connection Pooling های بانک های SQL Server، با استفاده از ابزار SQL Profiler (که از متعلقات SQL Server است) یا ابزار Performance Monitor ویندوز، انجام می پذیرد.
ابزار SQL Profiler:
مراحل کار:
1) SQL Profiler به دو طریق قابل دسترسی است.
از منوی Start، All Programs، Microsoft SQL Server، Profiler یا انتخاب گزینه SQL Profiler از منوی Tools نرم افزار Enterprise Manager.
2) پس از اجرای برنامه، از منوی File، گزینه New و سپس Trace را انتخاب کنید.
3) پس از اعمال تنظیمات لازم جهت برقراری ارتباط در کادر ظاهر شده، بر روی دکمه OK کلیک کنید. فرم تنظیمات Trace Properties ظاهر خواهد شد.
4) از فرم Trace Properties سر برگ Events را انتخاب کنید.
5) در لیست باکس سمت راست و در زیر عبارت Selected Event Classes، عبارات Audit Login و Audit Logout در زیر عبارت Security Audit وجود دارند.
به جز این دو عبارت، بقیه عبارات را انتخاب و حذف کنید. (بر روی دکمه Remove کلیک کنید)
6) بر روی دکمه Run، کلیک کنید.
7) حال پنجره ای ظاهر می شود که شامل رویداد های Audit Login (زمانی که Connection برقرار می شود) و Audit Logout (زمانی که Connection قطع می شود) خواهد بود.
تمامی خصوصیات Connection نیز در فیلد های مختلف نشان داده خواهند شد.
ابزار Performance Monitor ویندوز:
مراحل کار:
1) جهت اجرای برنامه، از طریق Control Panel، گزینه Administrative Tools و سپس Performance را انتخاب کنید.
2) به منظور انتخاب Connection ها جهت Monitoring کردن آنها، به دو طریق می توان عمل کرد.
یا بر روی چارت ابزار راست کلیک کرده و از منوی ظاهر شده، گزینه Add Counters را انتخاب کنید و یا در جعبه ابزار برنامه، بر روی دکمه Add کلیک کنید.
3) در فرم Add Counters از منوی رو به پایین قسمت Performance Object، گزینه NET CLR Data. را انتخاب کنید.
Counter ها یا شمارنده هایی که به لیست باکس سمت چپ اضافه می شوند، آماری در مورد تعداد Connection ها یا Connection Pooling ها می دهند و به کاربر، در رفع مشکلات احتمالی در برقراری ارتباطات کمک می کنند.
هر کدام از این گزینه ها در ادامه توضیح داده خواهند شد...
SqlClient: Current # of pooled and nonpooled connections
تعداد تمامی Connection های جاری. (Pool و غیر Pool)
SqlClient: Current # pooled connections
تعداد Connection ها در تمامی Pool ها.
SqlClient: Current # connection pools
تعداد Connection ها در Pool جاری.
SqlClient: Peak # pooled connections
بیشترین تعداد Connection ها در تمامی Pool ها از زمان آغاز پروسه.
SqlClient: Total # failed connects
مجموع تمامی تلاش هایی که جهت برقراری Connection انجام شده اما به هر دلیلی نا موفق بوده.
4) نوع Counter را از لیست باکس انتخاب کرده و بر روی دکمه Add و سپس Close کلیک کنید.
:ODBC
به منظور Monitoring بر روی پرووایدرهای ODBC:
1) از طریق Control Panel، گزینه Administrative Tools و سپس Data Sources(ODBC) را انتخاب کنید.
2) سر برگ Connection Pooling را انتخاب کنید.
3) در قسمت PerfMon، گزینه Enable را فعال کنید. بر روی دکمه OK کلیک کنید.
4) ابزار Performance Monitor را از طریق Control Panel، گزینه Administrative Tools و سپس Performance انتخاب کنید.
5) به منظور انتخاب Connection ها جهت Monitoring کردن آنها، به دو طریق می توان عمل کرد.
یا بر روی چارت ابزار راست کلیک کرده و از منوی ظاهر شده، گزینه Add Counters را انتخاب کنید و یا در جعبه ابزار برنامه، بر روی دکمه Add کلیک کنید.
6) در فرم Add Counters از منوی رو به پایین قسمت Performance Object، گزینه ODBC Connection Pooling را انتخاب کنید.
Counter ها یا شمارنده هایی که به لیست باکس سمت چپ اضافه می شوند، آماری در مورد تعداد Connection ها یا Connection Pooling ها می دهند و به کاربر، در رفع مشکلات احتمالی در برقراری ارتباطات کمک می کنند.
هر کدام از این گزینه ها در ادامه توضیح داده خواهند شد...
Connections Currently Active
تعداد Connection های جاری که هم اکنون توسط برنامه ها مورد استفاده قرار گرفته اند.
Connections Currently Free
تعداد Connection های موجود در Pool که برای پاسخ گویی به درخواست های جدید ایجاد ارتباط، آماده هستند.
Connections/Sec Hard
تعداد Connection های ایجاد شده در هر ثانیه.
Connections/Sec Soft
تعداد Connection های برگرفته از Pool در هر ثانیه.
Disconnections/Sec Hard
تعداد Connection های بسته شده در هر ثانیه.
Disconnections/Sec Soft
تعداد Connection های بسته شده از طریق Pool در ثانیه.
<hr>
موفق باشید.