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

JMeter اختبار الحمل
JMeter اختبار الحمل هي عملية اختبار تتم باستخدام أداة اختبار التحميل المسماة Apache JMeter وهو تطبيق سطح مكتب مفتوح المصدر يعتمد على Java. JMeter يعد اختبار التحميل أداة مهمة تحدد ما إذا كان تطبيق الويب قيد الاختبار يمكنه تلبية متطلبات التحميل العالية أم لا. كما أنه يساعد على تحليل الخادم العام تحت الحمل الثقيل.
JMeter اختبار أداء
JMeter اختبار أداء is الاختبار طريقة تنفيذها باستخدام Apache JMeter لاختبار أداء تطبيق الويب. JMeter يساعد اختبار الأداء على اختبار الموارد الثابتة والديناميكية، ويساعد على اكتشاف المستخدمين المتزامنين على موقع الويب ويوفر مجموعة متنوعة من التحليلات الرسومية لاختبار الأداء. JMeter يتضمن اختبار الأداء اختبار التحميل واختبار التحمل لتطبيق الويب.
Apache JMeter توفر أداة الاختبار ما يلي تستفيد in اختبار أداء
- JMeter يمكن استخدامها لاختبار أداء كليهما ساكن الموارد مثل Javaسيناريو وHTML، كذلك ديناميكي الموارد، مثل JSP وServlets وAJAX.
- JMeter علبة اكتشف الحد الأقصى لعدد المستخدمين المتزامنين الذين يمكن لموقع الويب الخاص بك التعامل معهم
- JMeter يوفر مجموعة متنوعة من التحليلات الرسومية لتقارير الأداء.
JMeter يشمل اختبار الأداء ما يلي:
- حمل الاختبار: نمذجة الاستخدام المتوقع من خلال محاكاة وصول مستخدمين متعددين إلى خدمات الويب في نفس الوقت.
- إجهاد الاختبار: يتمتع كل خادم ويب بسعة تحميل قصوى. عندما يتجاوز التحميل الحد الأقصى، يبدأ خادم الويب في الاستجابة ببطء وينتج أخطاء. الغرض من اختبار الإجهاد هو العثور على الحد الأقصى للتحميل الذي يمكن لخادم الويب التعامل معه.
ويوضح الشكل أدناه كيف JMeter اختبار الحمل يحاكي الحمل الثقيل:
إنشاء خطة اختبار الأداء في JMeter
في هذا الدرس التعليمي، سنقوم بتحليل أداء Googleموقع .com لـ 1000 مستخدم يستخدمون خدمات متنوعة أدوات اختبار الأداء للتأكد من قدرة موقع الويب على التعامل مع الحمل وتوفير تجربة مستخدم سلسة.
قبل اختبار أداء تطبيق الويب المستهدف، يجب علينا تحديد-
- تحميل عادي: متوسط عدد المستخدمين الذين يزورون موقع الويب الخاص بك
- حمل ثقيل: الحد الأقصى لعدد المستخدمين الذين يزورون موقع الويب الخاص بك
- ما هو ك الهدف في هذا الاختبار؟
هو، هنا، خريطة طريق على هذا المثال العملي
الخطوة 1) إضافة مجموعة المواضيع
- بالبداية JMeter
- اختر خطة اختبار على الشجرة
- إضافة مجموعة الخيوط
انقر بزر الماوس الأيمن على "خطة الاختبار" وأضف مجموعة سلاسل رسائل جديدة: إضافة -> المواضيع (المستخدمين) -> مجموعة الخيوط
في لوحة تحكم مجموعة الخيوط، أدخل خصائص الموضوع كما يلي:
- عدد المواضيع: 100 (عدد المستخدمين المتصلين بالموقع المستهدف: 100)
- عدد الحلقات: 10 (عدد الوقت لتنفيذ الاختبار)
- Ramp-فترة المتابعة: 100
عدد الخيوط وعدد الحلقات هما مختلف.
Ramp-فترة المتابعة تحكي JMeter كم من الوقت تأخير قبل بدء المستخدم التالي. على سبيل المثال، إذا كان لدينا 100 مستخدم و100 ثانية Ramp-فترة المتابعة، سيكون التأخير بين المستخدمين المبدئيين ثانية واحدة (1 ثانية/100 مستخدم)
الخطوة 2) الإضافة JMeter عناصر
الآن نحدد ماذا JMeter العناصر في هذا الاختبار العناصر هي
-
طلب HTTP الافتراضي
يمكن إضافة هذا العنصر عن طريق النقر بزر الماوس الأيمن على مجموعة المواضيع واختيار: إضافة -> عنصر التكوين -> افتراضيات طلب HTTP.
في لوحة تحكم إعدادات طلب HTTP الافتراضية، أدخل اسم موقع الويب قيد الاختبار (http://www.google.com)
-
طلب HTTP
انقر بزر الماوس الأيمن على مجموعة المواضيع وحدد: إضافة -> العينات -> طلب HTTP.
في لوحة تحكم طلب HTTP، يشير حقل المسار إلى ذلك URL طلب تريد إرسالها إلى Google الخادم.
على سبيل المثال، إذا قمت بإدخال "تقويمنا"في حقل المسار. JMeter سيخلق URL طلب http://www.google.com/calendar إلى Google الخادم
إذا احتفظت بحقل المسار فارغة JMeter سيخلق URL طلب http://www.google.com إلى Google الخادم.
في هذا الاختبار، عليك الاحتفاظ بحقل المسار فارغًا لإنشاءه JMeter إنشاء URL طلب http://www.google.com إلى Google الخادم.
الخطوة 3) إضافة نتيجة الرسم البياني
JMeter يمكن أن تظهر نتيجة الاختبار في شكل رسم بياني.
انقر بزر الماوس الأيمن فوق خطة الاختبار، إضافة -> مستمع -> نتائج الرسم البياني
الخطوة 4) قم بتشغيل الاختبار واحصل على نتيجة الاختبار
الإعلام الركض الزر (Ctrl + R) الموجود على شريط الأدوات لبدء عملية اختبار البرنامج. سترى نتيجة الاختبار معروضة على الرسم البياني في الوقت الفعلي.
تعرض الصورة أدناه رسمًا بيانيًا لخطة الاختبار، حيث قمنا بمحاكاة 100 مستخدم قاموا بالوصول إلى موقع الويب www.google.com.
في أسفل الصورة، توجد الإحصائيات التالية، ممثلة بالألوان:
- الأسود: إجمالي عدد العينات الحالية المرسلة.
- ازرق: المتوسط الحالي لجميع العينات المرسلة.
- أحمر: الانحراف المعياري الحالي.
- أخضر: معدل الإنتاجية الذي يمثل عدد الطلبات في الدقيقة التي يعالجها الخادم
دعونا نحلل أداء Google الخادم في الشكل أدناه.
لتحليل أداء خادم الويب قيد الاختبار، يجب عليك التركيز على معلمتين
- الإنتاجية
- الانحراف
استخدم الإنتاجية هي المعلمة الأكثر أهمية. إنه يمثل قدرة الخادم على التعامل مع الحمل الثقيل. ال أعلى الإنتاجية هي أفضل هو أداء الخادم.
في هذا الاختبار، معدل نقل البيانات لـ Google تكلفة الخادم 1,491.193/دقيقة. وهذا يعني Google يستطيع الخادم معالجة 1,491.193 طلبًا في الدقيقة. هذه القيمة مرتفعة جدًا، لذا يمكننا أن نستنتج أن Google يتمتع الخادم بأداء جيد
استخدم الانحراف يظهر باللون الأحمر - وهو يشير إلى الانحراف عن المتوسط. ال الأصغر القادم أفضل.
لنقارن أداء Google الخادم إلى خوادم الويب الأخرى. هذه هي نتيجة اختبار أداء الموقع الإلكتروني http://www.yahoo.com/ (يمكنك اختيار مواقع أخرى)
إنتاجية موقع ويب قيد الاختبار http://www.yahoo.com معدل الطلبات هو 867.326 طلبًا في الدقيقة. وهذا يعني أن هذا الخادم يعالج 867.326 طلبًا في الدقيقة، وهو أقل من Google.
الانحراف هو 2689، وهو أعلى بكثير من Google (577). لذلك يمكننا تحديد أن أداء هذا الموقع الإلكتروني أقل من Google الخادم.
NOTE: تعتمد القيم المذكورة أعلاه على عدة عوامل مثل حمل الخادم الحالي في Googleسرعة الإنترنت لديك، وقوة معالجك، وما إلى ذلك. لذا، من غير المرجح أن تحصل على نفس النتائج المذكورة أعلاه. فلا داعي للقلق! إذا كنت مهتمًا بفهم كيفية تأثير حمل الخادم على الأداء وكيفية اختباره، فقد تجد هذا مفيدًا. تحميل البرنامج التعليمي لاختبار مفيد.
فحص الجهاز
إذا واجهت المشكلة أثناء تشغيل السيناريو أعلاه، فقم بما يلي
- تحقق مما إذا كنت متصلاً بالإنترنت عبر وكيل. إذا كانت الإجابة بنعم، قم بإزالة الوكيل.
- افتح مثيلًا جديدًا لـ Jmeter
- فتح PerformanceTestPlan.jmx في جيميتر
- Double انقر على مجموعة المواضيع -> نتيجة الرسم البياني
- قم بتشغيل الاختبار




















