amazon web services - أوس إلب لا توزيع الطلبات على السيارات التحجيم مجموعة EC2 حالات في بعض الحالات




amazon-web-services jmeter (2)

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

أولا، لقد فعلت مقياس في / خارج الاختبار. أنا تعيين عتبة أن يكون استخدام وحدة المعالجة المركزية 70٪ لمدة 2 فترات، كل فترة 2 دقيقة. تعمل إلب بشكل جيد، و تم توزيع الطلبات على جميع حالات EC2 في مجموعة تحجيم السيارات، على الرغم من عدم المساواة، بعد تطبيق مقياس التدريجي.

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

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

لقد وجدت بلوق التي قالت إلب كبيرة في ها ولكن لا تحميل موازنة. https://www.stackdriver.com/elb-affinity-problems ولكن، أنا لا أعتقد أن السلوك، طلبات التعامل مع حالة واحدة فقط، أمر طبيعي.

ماذا بحق الجحيم في إلب آلية توازن التحميل؟ أنا محتار.


مرونة تحميل آلية موازنة

  • يستخدم ملقم دنس روبن جولة دنس لتحديد عقدة موازن التحميل في منطقة أفايلابليتي محددة سوف تتلقى الطلب
  • يتحقق موازن التحميل المحدد لملف تعريف ارتباط "جلسة لاصقة"
  • يرسل موازن أواد المحدد الطلب إلى المثال الأقل تحميلا

وبتفصيل أكبر:

مناطق التوافر (من غير المرجح قضيتك )

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

الجلسات (على الأرجح حالتك )

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

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

خوارزمية التوجيه ( أقل احتمالا لحالتك )

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

المصدر: مرونة موازنة الحمل المصطلحات ومفاهيم المفتاح

نأمل أن يساعد.


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

إلب-موديفي-لب-أتريبوتس $ {إلب} --region $ {ريجيون} --crosszoneloadbalancing "إنابلد = ترو"

http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/enable-disable-crosszone-lb.html