عدادات الأداء "شبكة الإتصال"

تتضمن وحدة تحكم الأداء فئة شبكة NET CLR. العدادات التي توفر معلومات حول البيانات التي يرسلها التطبيق ويتلقاها عبر الشبكة. الجدول التالي يصف عدادات الأداء هذه.

عداد الأداء

الوصف

وحدات البايت المتلقاة

عدد وحدات البايت الكلي التراكمي المتلقاة من قبل كل الكائنات Socket ضمنAppDomain منذ بدء العملية. هذا الرقم يتضمن بيانات و أية معلومات بروتوكول غير معرّفة في TCP/IP.

وحدات البايت المرسلة

عدد وحدات البايت الكلي التراكمي المرسلة من قبل كل الكائنات Socket ضمنAppDomain منذ بدء العملية. هذا الرقم يتضمن بيانات و أية معلومات بروتوكول غير معرّفة في TCP/IP.

الاتصالات المتأسسة

العدد الإجمالي التراكمي للكائنات Socket لدفق مآخذ التوصيل التي تم توصيلها داخل AppDomain منذ بدء العملية.

مخططات البيانات المتلقاة

عدد حزم مخططات البيانات التراكمية المتلقاة من قبل كل الكائنات Socket ضمنAppDomain منذ بدء العملية.

مخططات البيانات المرسلة

عدد حزم مخططات البيانات التراكمية المرسلة من قبل كل الكائنات Socket ضمنAppDomain منذ بدء العملية.

متوسط مدة بقاء HttpWebRequest

متوسط زمن إكمال كل كائنات HttpWebRequest التي تم إنهاؤها في الفاصل الزمني الأخير داخل AppDomain منذ بدء العملية.

وقت قائمة الإنتظار المتوسط ل HttpWebRequest

متوسط الوقت في وقت الانتظارلكل الكائنات HttpWebRequest التي تركت قائمة الانتظار في الفاصل الزمني الأخير داخل AppDomain منذ بدء العملية.

HttpWebRequests المنشأة / ثانية

رقم الكائنات HttpWebRequest التي تم إنشاؤها في الثانية داخل AppDomain.

HttpWebRequests الموجودة في قائمة الانتظار/ ثانية

رقم كائنات HttpWebRequest التي تمت إضافتها إلى قائمة الانتظار في الثانية داخل AppDomain.

HttpWebRequests الموقفة / ثانية

عدد كائنات HttpWebRequest حيث يستدعي التطبيق الأسلوب Abort كل ثانية داخل AppDomain.

HttpWebRequests الفاشلة / ثانية

عدد كائنات HttpWebRequest التي تلقت تعليمات برمجية لحالة فشل من الخادم في الثانية داخل AppDomain.

ملاحظات

توجد عدة فئات من عدادات أداء شبكة الاتصال معتمدة:

  • عدادات الحدث التي تقيس عدد مرات حدوث بعض الأحداث.

  • عدادات البيانات التي تقيس كمية البيانات المرسلة أو المتلقاة.

  • عدادات المدة التي تقيس مدة تنفيذ عمليات مختلفة. يتم قياس الأوقات على الكائنات كل فاصل زمني (عادةً بالثواني) بعد خروجهم من حالات مختلفة.

  • عدادت " لكل فترة زمنية " التي تقيس رقم الكائنات التي تقوم بعملية إنتقال معينة لكل فاصل زمني (عادة في الثانية).

عدادات الأداء " شبكة الإتصال " للأحداث تتضمن ما يلي:

  • الاتصالات المتأسسة

  • مخططات البيانات المتلقاة

  • مخططات البيانات المرسلة

توفر عدّادات الأداء هذه حسابات منذ بدء تشغيل العملية. حسابات الإتصالات Socket المتأسسة تتضمن إستدعاءات أساليب Socket صريحة بواسطة تطبيق لاتصال حزم الدفق الذي تم إنشاؤه بالإضافة إلى المكالمات الداخلية التي تم إجراؤها بواسطة فئات أخرى (على سبيل المثال , HttpWebRequest, FtpWebRequest, WebClient، و TcpClient) إلى فئة Socket.

حسابات مخططات البيانات المتلقاة و مخططات البيانات المرسلة تتضمن حزم مخطط بيانات المرسلة أو المتلقاة باستخدام إستدعاءات الأسلوب Socket من قبل تطبيق بالإضافة للإتصالات الداخلية التي تم إجراؤها بواسطة فئات أخرى ( على سبيل المثال , UdpClient) إلى Socket. . يمكن إستخدام حسابات مخططات البيانات المتلقاة و مخططات البيانات المرسلة لتوفير مقياس نابي جدا عن عدد وحدات البايت المرسلة أو المتلقاة باستخدام مخططات البيانات بواسطة افتراض حجم متوسط لمخطط البيانات.

عدادات الأداء " شبكة الإتصال " للبيانات تتضمن ما يلي:

  • وحدات البايت المتلقاة

  • وحدات البايت المرسلة

توفر العدادات أعلاه حساب وحدات البايت منذ بدء العملية.

هناك نوعان من عدادات المدة تقوم بحساب المدة المستغرقة لمرور كائنات HttpWebRequest إما خلال دورة حياتها بالكامل أو جزءاً منها فقط :

  • متوسط مدة بقاء HttpWebRequest

  • وقت قائمة الإنتظار المتوسط ل HttpWebRequest

لعدادات HttpWebRequest Average Lifetime , مدة بقاء معظم كائنات HttpWebRequest تبدأ دائماً مع الوقت الذي يتم فيه إنشاء الكائن حتى الوقت الذي يتم فيه إغلاق دفق الاستجابة بواسطة التطبيق. هناك حالتين غير شائعتين :

  • إذا كان التطبيق لا يستدعي أساليب GetResponse أو BeginGetResponse أبداً , إذا يتم تجاهل مدة بقاء الكائن HttpWebRequest.

  • إذا كان الكائن HttpWebRequest يطرح WebException عند استدعاء الأساليب GetResponse أو EndGetResponse ، تنتهي مدة البقاء عند طرح ‏‏ الاستثناء. من الناحية التقنية، يتم إغلاق دفق الإستجابة الأساسي عند تلك النقطة (دفق استجابة الذي يتم إرجاعه إلى المستخدم هو بالواقع دفق ذاكرة يحتوي على نسخ من دفق استجابة).

هناك أربعة عدادات تتعقب مشكلات كائن HttpWebRequest لكل فاصل زمني. يمكن لعدادات الأداء هذه أن تساعد مطوري التطبيق والمسؤولين و فريق الدعم لفهم ما الذي تقوم الكائنات HttpWebRequest بتنفيذه. تتضمن العدادات ما يلي:

  • HttpWebRequests المنشأة / ثانية

  • HttpWebRequests الموجودة في قائمة الانتظار/ ثانية

  • HttpWebRequests الموقفة / ثانية

  • HttpWebRequests الفاشلة / ثانية

لعداد HttpWebRequests Aborted/sec , يتم أيضا ًحساب الإتصالات الداخلية ل Abort. يتم إنشاء هذه المكالمات الداخلية بواسطة أوقات المهلة التي يود التطبيق قياسها.

يحتوي العداد HttpWebRequests Failed/sec اعلى رقم كائنات HttpWebRequest التي تلقت تعليمات برمجية لحالة فشل من الخادم في الثانية. وهذا يعني أنه تعليمات برمجية الحالة المتلقاة من خادم Http في نهاية الطلب ليست في النطاق بين 200 إلى 299. رموز الحالة التي تمت معالجتها و التي تنتج طلب جديد (على سبيل المثال , العديد من رموز حالة 401 غير المصرح بها)ستفشل أو لن تفشل استناداً إلى ناتج إعادة المحاولة. إذا لاحظ التطبيق خطأ استناداً إلى إعادة المحاولة , يتم زيادة هذا العداد.

يمكن الوصول إلى عدّادات الأداء الشبكة وإدارتها باستخدام كلا من PerformanceCounter و الفئات ذات الصلة في مساحة الإسم System.Diagnostics. يمكن عرض عدادات الأداء "شبكة الإتصال " أيضاً مع وحدة تحكم مراقبة الأداء في Windows.

يجب تمكين عدادات الأداء " شبكة الإتصال " في ملف التكوين ليتم استخدامها. يتم تمكين و تعطيل كل عدادات الأداء " شبكة الإتصال " بواسطة إعداد واحد في ملف التكوين. لا يمكن تمكين أو تعطيل عدادات الأداء "شبكة الإتصال" الفردية. لمزيد من المعلومات، راجع عنصر <performanceCounter> (إعدادات شبكة الاتصال).

إذا تم تمكين عدادات شبكة الإتصال , سيؤدي هذا إلى إنشاء و تحديث كلا من عدادات الأداء العمومية و عدادات per-AppDomain . في حالة تعطيلها , التطبيق لن يوفر أية بيانات عن عداد الأداء "شبكة الاتصال".

يتم تجميع عدّادات الأداء في فئات. يمكن للتطبيق وضع كل الفئات في قائمة بواسطة التعليمة البرمجية الموجودة في المثال التالي:

PerformanceCounterCategory[] Array = PerformanceCounterCategory.GetCategories();
for (int i = 0; i < Array.Length; i++)
{
    Console.Out.WriteLine("{0}. Name={1} Help={2}", i, Array[i].CategoryName, Array[i].CategoryHelp);
}

يتم سرد عدادات الأداء " شبكة الإتصال " في فئتين:

  • "NET CLR Networking." - عدّادات الأداء الأصلية الموفرة في NET Framework. الإصدار 2 و المعتمدة في NET Framework. الإصدار 2 والإصدارات الأحدث.

  • ".NET CLR Networking 4.0.0.0." - كل من عدّادات الحزم و عدادات الأداء الجديدة المعتمدة في NET Framework. الإصدار 4 والإصدارات الأحدث. توفر هذه العدادات الجديدة معلومات الأداء على كائنات HttpWebRequest.

للحصول على معلومات أكثر حول الوصول و إدارة عدادات الأداء في تطبيق , راجع عدّادات الأداء في .NET Framework.

راجع أيضًا:

المرجع

عنصر <performanceCounter> (إعدادات شبكة الاتصال)

إنشاء تشكيل جانبي لوقت التشغيل

System.Diagnostics

موارد أخرى

عدّادات الأداء في .NET Framework