سؤال

لدي موقع ASP.NET كبير على منصة استضافة. يشارك الجهاز مع الكثير من التطبيقات الأخرى. ليس لدينا إمكانية الوصول إلى الجهاز نفسه (فقط حساب FTP).

عميلنا يشكو من أنه بدأ في الأداء بشكل سيء إلى حد ما، وخاصة حول ساعات الذروة. لقد قمت بتشغيل بعض القياسات عن بعد (باستخدام أداة تشبه JMeter) تخبرني بذلك، نعم، إنها تؤدي بالفعل بشكل سيء إلى حد ما خلال ساعات الذروة. لا تخبرني لماذا رغم ذلك. يقاوم العميل خطوة إلى خادم مخصص دون بعض الحقائق الصعبة.

كما أراها، ما أحتاج إليه بيانات صعبة حول الجهاز نفسه. سيكون إنشاء بيئة اختبار الأداء المحلية تستغرق وقتا طويلا، وليس لدي طريقة لتقدير أداء الخادم.

سيدي: هل هناك طريقة جيدة لجمع (الكثير) من قياسات الأداء عندما يكون لدي وصول محدود إلى الجهاز، وبالتأكيد لا يمكن الوصول إلى شاشة الأداء؟ يجب أن يعمل أي رمز في تطبيق ASP.NET نفسه، دون شده كثيرا.

هل كانت مفيدة؟

المحلول

كان لدينا مشكلة مماثلة في تطبيق ASP.NET المستضاف على خادم مشترك، والذي بدأ أيضا في الأداء بشكل سيء خلال ساعات الذروة.

على الرغم من أنني لا أعرف حل أنيق لسؤالك، إلا أن هذا ما فعلناه:

  1. تحدث إلى مزودي المضيفين لمعرفة ما هي المعلومات الإضافية التي يمكن أن تعطيكها - إنها في مصلحتها الأفضل للحفاظ على عملائها سعداء. تمكن مزودي المضيفون لدينا من تقديم بعض الوقت مع أحد مهندسي شبكتهم الذين زودونا ببعض إحصائيات وحدة المعالجة المركزية اللائقة واستخدام الذاكرة.

  2. خذ قياسات الأداء الخاصة بك عن طريق إغراق المعلومات إلى ملف السجل (باستخدام log4net.) و / أو قاعدة البيانات - على سبيل المثال، جلسات المستخدم وأوقات البحث، وضرب الصفحات، وقياسات التوقيت حول الوظيفة الرئيسية. من هذه المعلومات، تمكنا من التأكد من أن سلوكنا العادي للأنظمة لدينا لمجموعة من اختبارات التشغيل الأتمتة.

  3. قم بإعداد خادم محلي (ليس بالضرورة نفس الإحصائيات كمضيف / خادم الإنتاج) مع تحميل التطبيق الخاص بك وإعطائها اختبار الحمل / الأداء / الأداء الكامل (استخدمنا البوابة الحمراء النمل profiler.). ستمنحك الإحصائيات التي تجمعها من ذلك وعميلك مؤشرا جيدا على كيفية التصرف للنظام تحت أحمال معينة ببيئة معروفة. نعم، يمكن أن يكون هذا مستهلكا الوقت ولكنه سوف يمنحك أداة قياس أداء رائعة حتى تتمكن من قبضتك على الاختناقات محليا بدلا من الإنتاج.

حظ سعيد.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top