سؤال

أنا أقوم باختبار مع JMeter على تطبيق ويب (بني مع الربيع ، Struts2 الراحة ، يستخدم كيو).

أنا محاكاة المستخدم العادي هو السيناريو مع بلدي التطبيق:

4, 3 إدراج 20 تحديث المكالمات.

خادم المواصفات:

4core Intel Xeon X5365 3GHz

8GB من ذاكرة الوصول العشوائي

واحد 320GB SATA disk

نظام التشغيل:أوبونتو 8.10 32bit

DB:كيو 8.4

هر 6.0.18

جافا 1.6.0_14

تظهر النتائج أن الملقم التعامل مع حوالي 130 المعاملات المتزامنة.هذا عدد ممكن ؟ هل هناك أي نتائج على الإنترنت مقارنة مع لي ؟

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

المحلول

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

لدينا آلة مماثلة (إلا مع 16GB من ذاكرة الوصول العشوائي, تشغيل هر 5.5).في ذروة الحمل ، يمكن أن تكون بسهولة 256 الاتصالات المتزامنة.نحن نناقش تغيير maxThreads إلى 512.

بعض ضبط النصائح ،

  1. إذا قمت بتشغيل أباتشي كما الأمامية ، استخدام mod_jk.أدائها أفضل بكثير من mod_proxy.
  2. إذا كنت تخدم HTTP مباشرة أو استخدام mod_proxy استخدام NIO الموصل في هر 6.
  3. تأكد من الخاص بك تجمع مؤشرات الترابط (maxThreads) كبيرة بما فيه الكفاية ، الافتراضي هو فقط 200.
  4. جعل هر الدولة أقل.خاصة, لا تستخدم HttpSession.الدولة قد يسبب تسرب الذاكرة في التطبيق و تدهور الأداء تدريجيا.دفع كل ما تبذلونه من الدولة إلى قاعدة البيانات أو العميل (ملفات تعريف الارتباط).
  5. لا تستخدم قاعدة بيانات تجمع (DBCP).لدينا الخلية ، JDBC driver جدا الشطي.
  6. إذا كنت تشغيل مثيل واحد من JMeter ، قد يصبح من عنق الزجاجة.تشغيل العديد من العبيد من الشبكات المختلفة لمحاكاة الإنتاج الحقيقي الحمل.
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top