سؤال

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

أسئلتي هي على النحو التالي:

  1. عندما تبدأ في التخطيط لوقت الاستجابة المتوقع للطلب؛ماذا تعتبر.إذا كانت هذه هي الخطوة الأولى على الإطلاق.أعني، لدي تطبيق ويب الآن.هل أقوم فقط بسحب شخصية من الهواء وأقول "أتوقع أن يستغرق التطبيق 3 ثوانٍ للرد على كل طلب".ثم ابدأ في معرفة ما ينقص طلبي للحصول على وقت الاستجابة هذا؟

  2. أم أن الأمر على العكس من ذلك، وتبدأ اختبار الأداء بمجموعة معينة من الأجهزة وتقول، دعنا نرى وقت الاستجابة الذي أحصل عليه الآن، ثم تنظر إلى النتائج وتقول، حسنًا، إنها 8 ثوانٍ الآن، أرغب في ذلك لتكون 3 ثوانٍ كحد أقصى، لذا دعونا نرى كيف يمكننا تحسينها لتكون 3 ثوانٍ؟ولكن مرة أخرى هل 3 ثواني خارج الهواء؟أنا متأكد من أن توسيع نطاق الأجهزة فقط لن يؤدي إلى زيادة وقت الاستجابة.هل سيحصل على وقت استجابة فقط عندما يكون الجهاز/الخادم الفردي تحت التحميل وتبدأ في التجميع؟

  3. الآن بالنسبة لمستخدم واحد، لدي وقت استجابة يصل إلى 3 ثوانٍ ولكن مع زيادة الحمل ينخفض ​​بشكل كبير؛فأين أرسم الخط الفاصل بين "أحتاج إلى تحسين الكود بشكل أكبر" (والذي له حد أعلى) و"أحتاج إلى توسيع نطاق خوادمي" (والذي له حد أيضًا)

  4. ما هي أفضل الأدوات المجانية لإجراء اختبار الأداء والتحميل؟لقد استخدمت Jmeter قليلا.ولكن هل هناك أي شيء آخر جيد ومفتوح المصدر؟

  5. إذا كان لا بد لي من تحسين التعليمات البرمجية، فهل أبدأ في تحديد ملامح التدفقات المحددة التي استغرقت وقتًا طويلاً في الاستجابة للطلبات؟

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

شكرًا.

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

المحلول

ال مجلس اختبار الأداء هي بوابتك لتبادل الخبرات والمعرفة وممارسة اختبار الأداء بحرية.

اقرأ أيضا أنماط وممارسات مايكروسوفت لاختبار الأداء.يوضح لك هذا الدليل نهجًا شاملاً لتنفيذ اختبار الأداء.

طائر الفينيق ذكر أدوات مفتوحة المصدر.

نصائح أخرى

هذا الرابط و هذا اعرض مثالاً وطريقة لضبط أداء أحد التطبيقات عندما لا يحتوي التطبيق على أي "اختناقات" واضحة.يعمل بشكل حدسي أكثر على المواضيع الفردية.ليس لدي أي خبرة في استخدامه على تطبيقات الويب، على الرغم من أن الآخرين يفعلون ذلك.أوافق على أن التنميط ليس بالأمر السهل، لكنني اعتمدت دائمًا على هذه التقنية، وأعتقد أنها سهلة/فعالة جدًا.

أولاً، قم بتصميم تطبيقك بشكل صحيح.

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

سأحاول تقديم الدليل الأساسي خطوة بخطوة، والذي يمكن استخدامه لتنفيذ اختبار الأداء في مشروعك.

1 - قبل أن تبدأ الاختبار يجب أن تعرف مقدار الذاكرة الفعلية ومقدار الذاكرة المخصصة لـ JVM أو أي شيء آخر.يجمع حجم قاعدة البيانات أكبر قدر ممكن من المقاييس لبيئتك الحالية. أعرفك البيئة

2 - ستكون الخطوة التالية هي تحديد حجم إنتاج قاعدة البيانات المشتركة والنمو السنوي المتوقع.ستحتاج إلى اختبار كيفية تصرف طلبك بعد عام أو عامين أو خمسة وما إلى ذلك،

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

4 - بمجرد الانتهاء من جمع المعلومات الأساسية - فكر في مراقبة خوادمك تحت التحميل، ربما لديك بالفعل بعض حلول المراقبة مثل http://newrelic.com/ سيساعدك هذا على تحديد سبب تدهور الأداء (وحدة المعالجة المركزية/الذاكرة/كمية الخيوط وما إلى ذلك) تحتوي بعض أدوات اختبار الأداء على أنظمة مراقبة مدمجة.

عند هذا، تكون جاهزًا للتحرك باستخدام الأدوات واختيار التحميل، وهناك بالفعل مواد مقدمة حول كيفية القيام بذلك، لذا سأتخطى جزءًا من اختيار عبء العمل.

5 - اختر اداة أعتقد أن JMeter + http://blazemeter.com/ هو ما تحتاجه في هذه المرحلة، وكلاهما يحتوي على الكثير من المقالات والمواد التعليمية الرائعة، ولتسجيل البرنامج النصي الخاص بك، أوصي باستخدام ملحق blazemeters Chrom بدلاً من حل JMeters المدمج.إذا كنت لا تزال تعتقد أنك تفتقر إلى المعرفة حول كيفية القيام بالأشياء في JMeter فإنني أوصي بالحصول على هذا الكتاب - اختبار الأداء باستخدام JMeter 2.9 بواسطة Bayo Erinle

6- تحليل النتائج ومراجعة خطة الاختبار واتخاذ الإجراءات المناسبة.

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