مبادئ تصميم كفاءة الأداء
كفاءة الأداء هي قدرة حمل العمل الخاص بك على التكيف مع التغييرات في الطلبات. يجب أن يكون حمل العمل قادرا على التعامل مع زيادة الحمل دون المساس بتجربة المستخدم. وعلى العكس من ذلك، عندما يكون هناك انخفاض في الحمل، يجب أن يحافظ حمل العمل على موارده. تعد السعة، التي تشير إلى توفر الموارد (وحدة المعالجة المركزية والذاكرة)، عاملا مهما.
لا ينبغي أن يعتمد تصميم حمل العمل فقط على السعة المقدمة مسبقا، مما يضمن الأداء حتى حد معين. إذا تم تجاوز هذا الحد، فقد يواجه حمل العمل مشكلات في الأداء أو حتى يواجه انقطاعا. عندما يكون التحميل ضمن هذا الحد، تستمر الموارد في العمل دون داع، مما يؤدي إلى تكبد التكاليف.
تحتاج إلى استراتيجية شاملة للحفاظ على أهداف الأداء بمرور الوقت. لا ينبغي أن تكون اعتبارات الأداء مرحلة لاحقة في عملية التصميم، بل يجب معالجتها فقط عند ظهور مشكلات في الإنتاج. بدلا من ذلك، تبني عقلية حيث يكون الأداء أحد الاعتبارات الرئيسية من المراحل المبكرة للتصميم. في البداية، أنشئ النظام دون أي أهداف أداء محددة. ولكن من هناك، اختبر الأداء وقياسه في كل مرحلة من مراحل التطوير لضمان التقدم والفعالية. ويمكن أن يؤدي التحسين المستمر لهذه الأهداف طوال العملية ودمج الدروس المستفادة من الإنتاج إلى التخفيف بشكل كبير من المشكلات المحتملة مقدما.
يمكن أن تساعد مبادئ التصميم هذه في بناء استراتيجيتك لإدارة قدرة الموارد لتلبية متطلبات عملك للاستخدام المتوقع بشكل كاف. أيضا، تقليل النفايات خلال ساعات خارج أوقات الذروة. بعد اتخاذ قرار بشأن استراتيجية، قم بترسيخ تصميمك باستخدام قائمة التحقق من كفاءة الأداء.
تتعلق كفاءة الأداء باستخدام موارد حمل العمل بشكل فعال. بدون استراتيجية جيدة، قد لا تتمكن من توقع متطلبات المستخدم وتلبيةها. قد تضطر إلى اللجوء إلى نهج التنبؤ طويل الأجل والقدرة المقدمة مسبقا، والذي لا يسمح لك بالاستفادة الكاملة من النظام الأساسي السحابي الخاص بك.
التفاوض على أهداف أداء واقعية
يتم تحديد تجربة المستخدم المقصودة، وهناك استراتيجية لتطوير معيار وقياس الأهداف مقابل متطلبات العمل المحددة مسبقا. |
---|
من منظور الأداء، من المثالي أن يكون لديك أهداف أداء محددة جيدا لبدء عملية التصميم الخاصة بك. لتعيين هذه الأهداف، تحتاج إلى فهم جيد لمتطلبات العمل والجودة المتوقعة للخدمة التي من المتوقع أن يقدمها حمل العمل. حدد التوقعات بالتعاون مع أصحاب المصلحة في الأعمال. بدلا من التركيز فقط على المقاييس التقنية، حدد التأثيرات المقبولة على تجربة المستخدم للتدفقات الرئيسية.
هناك تبعية دائرية. لا يمكنك قياس ما لم تحدده، ولا يمكنك تحديده دون قياس. لذلك، من المهم أيضا قياس أداء حمل العمل حتى تحقق تعريفا مرضيا للحد المقبول بالاتفاق الجماعي.
هناك ارتباط قوي بين أهداف الأداء والموثوقية، والتي تساعد في تحديد جودة الخدمة من حيث الأداء والتوافر والمرونة. بدون تعريف واضح، من الصعب قياس الأداء والتنبيه له واختباره. بعد إنشاء الأهداف وتحديد الأرقام الفعلية من خلال الاختبار بمرور الوقت، يمكنك تنفيذ التنفيذ التلقائي للاختبار المستمر مقابل هذه الأهداف.
الالتزام بأفضل الممارسات في تحديد الأهداف على مستوى الماكرو، حتى إذا كانت تقريبية أو ضمن نطاق.
النهج | المزايا |
---|---|
الاستعداد للتفاوض الفعال من خلال فهم المفاهيم التقنية، واستكشاف إمكانيات التصميم مع البنية الأساسية المتاحة، واستخدام النتائج من التجريب الملموس، إذا كان متاحا. استخدم البيانات التاريخية للحصول على رؤية لأنماط الاستخدام والاختناقات. تحقيق نتيجة تحليلات من العوامل الخارجية، مثل المدخلات من تحليل السوق والخبراء ومعايير الصناعة. |
يمكنك اتخاذ قرارات مستنيرة بناء على رؤى عملية. تركز أهداف الأداء على تجربة المستخدم التي تستند إلى ما هو ممكن وأفضل ممارسات الصناعة واتجاهات السوق الحالية. |
تعاون مع مالكي الأعمال لفهم وعود المستخدم، من حيث الجودة والتوافق التنظيمي، إن أمكن. الحفاظ على منظور واسع وتجنب الغوص في التفاصيل الدقيقة في هذه المرحلة. كن صريحا حول ما يمثل الأداء المقبول، بناء على الاستثمارات. فهم سياق الأعمال والنمو المتوقع. |
ستتجنب وضع افتراضات قد لا تتوافق مع أهداف العمل. كما أنه يدفع الوضوح والتحفيز داخل فريق حمل العمل. قد يكشف وجود سياق عمل حول المتطلبات الوظيفية وغير الوظيفية عن تغييرات التصميم في ركائز Azure Well-Architected الأخرى ويساعدك على إجراء مقايضات مستنيرة. يساعد تحديد المعلمات في وقت مبكر على تجنب التكاليف المرتبطة بإعادة تصميم الحل المحتمل لاحقا. يمكنك من التأكد من أن أهداف الأداء تغطي الإسقاطات المستقبلية، حتى تتمكن من مواءمة الجهود الحالية مع الأهداف طويلة الأجل. |
حدد تدفقات حمل العمل وحدد أولويات التدفقات في الرسم التخطيطي المعماري. حدد التسامح مع أداء كل تدفق على أنه نطاق من الأداء الطموح إلى الأداء غير المقبول. قم بتقييم نقاط الدخول والخروج لكل تدفق، مع مراعاة أهمية المسار وتكرار الاستخدام وكثافة البنية. |
من خلال تحديد أولويات التدفقات، يمكنك تركيز مواردك على المجالات الهامة التي لها أكبر تأثير على نتائج المستخدم والأعمال. من خلال تقسيم النظام إلى أجزائه وتبعياته، فإنك تفهم وظيفة كل مكون وتأثيره على الأداء. تصبح أيضا على دراية بالمشكلات المحتملة. يساعد على إنشاء أساس الأداء وتحسين محرك الأقراص. |
البدء في بناء نموذج أداء ضع في اعتبارك ما إذا كانت أنماط الاستخدام تظهر تباينات موسمية أو يومية. عامل في التكلفة والعمليات والأهمية بالنسبة للأعمال. استخدم معايير الصناعة لتحديد المقاييس وطرق التجميع، مثل استخدام القيم المئوية. تقييم توقعات الطلب والعرض والقيود التي تفرضها قيود الأعمال. دمج آفاق النمو. |
يوفر نموذج الأداء نظرة ثاقبة على الاستخدام الأمثل للموارد ويساعد في التخطيط الاستراتيجي. تساعد معايير الصناعة في قياس الأداء. يضمن التدقيق المستقبلي أن تظل أهداف الأداء ذات صلة ويمكنها التكيف مع التغييرات. |
تصميم لتلبية متطلبات السعة
توفير ما يكفي من العرض لتلبية الطلب المتوقع. |
---|
من المهم قياس الأداء بشكل استباقي. وينطوي قياس الأداء على قياس الخطوط الأساسية والفهم الأولي لمكونات النظام التي من المرجح أن تشكل تحديات. يمكنك تحقيق ذلك دون إجراء اختبار أداء كامل أو من خلال التحسين الدقيق. من خلال اتخاذ هذه الخطوات الأولية، يمكنك إنشاء أساس لإدارة الأداء الفعالة في وقت مبكر من دورة حياة التطوير.
افحص النظام ككل، بدلا من التركيز على المكونات الفردية. تجنب الضبط الدقيق في هذه المرحلة. يؤدي إجراء تحسينات أداء دقيقة إلى مفاضلات في مجالات أخرى. أثناء التقدم خلال دورة الحياة وبدء اختبار قبول المستخدم أو الانتقال نحو الإنتاج، يمكنك تحديد المجالات التي تتطلب المزيد من التحسين بسرعة.
النهج | الميزة |
---|---|
تقييم متطلبات المرونة للتدفقات المحددة. استكشف أنماط التصميم التي يمكن تنفيذها عبر مكدس التكنولوجيا، مع مراعاة التطبيق وطبقات الحوسبة والبيانات الأساسية. |
يمكنك تحديد متطلبات قابلية التوسع على المكونات الموجودة التي تحتاج إلى المزيد من السعة والمجالات التي تحتاج فيها إلى مكونات إضافية لتوزيع الحمل. أنت على دراية بالاختناقات المحتملة في النظام وتصميم عناصر التحكم التعويضية، مثل إضافة قدرات التخزين المؤقت لتقليل زمن الانتقال وتحميل النظام. |
اختر الموارد المناسبة عبر مكدس التكنولوجيا، والذي يمكنك من تحقيق أهداف الأداء والتكامل مع النظام. ضع في اعتبارك الميزات التي يمكن أن تفي بمتطلبات قابلية التوسع. ابحث عن التوازن الصحيح بين تخصيص الموارد ومتطلبات النظام، للتعامل مع الطفرات المفاجئة غير المتوقعة بكفاءة. |
من خلال تحليل القدرات المختلفة للموارد، يمكنك التأكد من أن كل مكون يساهم في الوظائف والأداء العام للنظام. يمكنك الاستفادة من القدرات المضمنة التي تؤدي تلقائيا إلى عمليات التحجيم. يمكن لموارد تغيير الحجم الصحيح تلبية التغييرات في الطلب دون الإفراط في التوفير، ما يؤدي إلى توفير التكاليف. |
قم بتخطيط السعة بناء على الطلب وقدرة الموارد المحددة لإثراء نموذج الأداء الخاص بك. استخدم تقنيات النمذجة التنبؤية للتنبؤ بالتغييرات المتوقعة في السعة التي يمكن أن تحدث مع تغييرات يمكن التنبؤ بها وغير متوقعة. حدد أهداف الأداء التي يمكن ترجمتها إلى متطلبات تقنية. |
يمكنك استخدام الموارد بكفاءة وتلبية الطلب دون الإفراط في التوفير، وبالتالي تجنب التكاليف غير الضرورية. أنت تفهم كيف تؤثر خيارات التصميم على الأداء. |
تنفيذ إثبات المفهوم الذي يتحقق من صحة المتطلبات التقنية وخيارات التصميم. | إثبات المفهوم مفيد في التحقق من صحة التصميم لتحديد ما إذا كان النظام يمكنه تلبية أهداف الأداء وما إذا كانت هذه الأهداف واقعية. استنادا إلى الحمل المتوقع، يمكنك التحقق مما إذا كانت السعة المتوقعة يمكنها تلبية أهداف الأداء. تحقق أيضا من الآثار المترتبة على التكلفة لخيارات التصميم. |
توثيق استراتيجية اختبار الأداء. قم بتضمين حالات الاستخدام والمنهجيات المختلفة و إيقاع خطط الاختبار الخاصة بك. حدد عملية للعملية الموضحة بواسطة خطة اختبار الأداء. فرز حالات الاختبار وتحديد أولوياتها في الخطة. ركز على الحالات التي تقدم رؤى قيمة حول أهداف الأداء ومواءمة تخطيط السعة. |
تأكد من اختبار الجوانب الصحيحة للنظام. يمكنك تخصيص الموارد بفعالية وإجراء الاختبارات بطريقة تتوافق مع أولويات ومتطلبات الأعمال. |
توثيق استراتيجية مراقبة الأداء. تقييم المقاييس على مستويات تجريد مختلفة لكل تدفق محدد. |
يمكنك تتبع التقدم نحو تحقيق أهداف الأداء طوال دورة التطوير. |
تحقيق الأداء والحفاظ عليه
الحماية من تدهور الأداء أثناء استخدام النظام ومع تطوره. |
---|
التطوير ليس جهدا لمرة واحدة. إنها عملية مستمرة. توقع تغييرات في الأداء مع تغير الميزات. هناك تباين في أنماط المستخدم وملفات التعريف، حتى التغييرات من التحسينات في ركائز Azure Well-Architected الأخرى. يمكن أن يؤدي أي تغيير إلى ضغط موارد حمل العمل.
حماية النظام من التغييرات بحيث لا ينزلق مرة أخرى على أهداف الأداء. دمج الاختبار والمراقبة في عملية التطوير. اختبر أداء النظام في الإنتاج مع التحميل الحقيقي ومحاكاة هذا الحمل مع الاختبار التلقائي قبل الإنتاج. في كلتا الحالتين، يجب أن يكون لديك ممارسات مراقبة مطبقة لأغراض التحقق.
طوال دورة حياة التطوير، قم بإجراء أنواع مختلفة من الاختبارات في مراحل مختلفة. في المراحل الأولية، اختبر إثبات المفهوم للتأكد من أن نتائج الأداء ليست غير متوقعة تماما. مع تقدم التطوير، قم بإجراء اختبارات يدوية منخفضة الجهد لوضع معايير. في مرحلة الإنشاء، ابدأ في تطوير اختبارات الأداء الروتينية التلقائية التي تقيم زمن الانتقال ومستويات الإجهاد وسعة التحميل والخصائص الأخرى المحددة في خطط الاختبار.
ويجب أن تكون المراقبة جزءا لا يتجزأ من هذا الجهد، بدلا من أن تكون عملية معزولة. يمكنك معرفة كيفية أداء النظام وموارده بمرور الوقت. يمكنك بعد ذلك ضبطها لزيادة قيمتها إلى أقصى حد، والتأكد من استمرارها في تلبية معايير الأداء.
ضع في اعتبارك أن أهداف الأداء تختلف بمرور الوقت، استجابة للتغييرات. تحديث نموذج الأداء استنادا إلى المقاييس التي تم اختبارها ومراقبتها. الإشارة بوضوح إلى زيادة أو تقليل أو عدم وجود تأثير على أداء التدفقات.
كن مستعدا دائما لإعادة التفاوض وإعادة تعيين التوقعات مع أصحاب المصلحة في الأعمال.
النهج | الميزة |
---|---|
دمج اختبارات الأداء الروتينية في Azure Pipelines. اختر المسارات التي يمكنها دمج الاختبارات. على العكس من ذلك، اختر أدوات الاختبار التي يمكن دمجها في المسارات. |
توفر الاختبارات التلقائية الوقت وتوفر التناسق الذي يسهل اكتشاف التراجعات أو التحسينات. تسمح هذه البيانات الاصطناعية بالمراقبة المستمرة لأي انحرافات أو انحراف بمرور الوقت، حتى تتمكن من الحفاظ على الأداء والجودة المتسقين. |
إضفاء الطابع الرسمي على اختبارات الأداء كبوابات جودة يمكنها الموافقة على ترقية الإصدار أو رفضها والتوزيع النهائي للإنتاج. | تضمن نقاط التحقق هذه أن كل مرحلة من مراحل التوزيع تفي بمعايير الأداء المطلوبة قبل المتابعة إلى المرحلة التالية. تساعد نقاط التحقق في منع تراجع الأداء غير المقصود. على سبيل المثال، إذا كان الأداء أقل بكثير من التوقعات، فقد تحظر إصدارا حتى يتم إجراء تحسينات. |
قم بإعداد عملية قابلة للتكرار لمراقبة المعاملات الحقيقية في الإنتاج والانحرافات مقابل أهداف الأداء الخاصة بك. استخدام المعاملات الاصطناعية في الإنتاج. إعداد تنبيهات المراقبة على تراجعات الأداء. |
تريد نظرة ثاقبة على الأداء الفعلي لنظامك في ظل الحمل في العالم الحقيقي الذي لا يمكن محاكاته من خلال الاختبارات. ثم يمكنك تحديد المشكلات ومجالات التحسين بشكل استباقي مثل الاختناقات المحتملة والموارد غير المستغلة بشكل جيد والمخاوف الأخرى. |
راجع نتائج اختبار الأداء ومراقبة البيانات بدقة وقم بتحسينها حتى تحقق أهداف الأداء. حدد أولويات الإجراءات المشتقة من هذه المراجعات وأضفها إلى تراكم التنفيذ المخطط له. |
استنادا إلى نتائج الاختبار، يمكنك التقاط البيانات ومقارنتها والبدء في تحليل الاتجاهات. تستند جهود التحسين الخاصة بك إلى البيانات. |
بناء مهارات الترميز التي تركز على الأداء. لديك معايير ترميز تجسد أنماط الترميز المستندة إلى الأداء. |
يمكن للتعليمات البرمجية التي لا تحتوي على مشكلات في الأداء أن تجعل دورات الاختبار أكثر كفاءة لأن الاختبارات يمكن أن تركز على مشكلات أكثر أهمية. تساعد أنماط الترميز على تجنب إعادة العمل وتحافظ على نمط الترميز متسقا. |
معالجة تآكل الأداء مع زيادة الاستخدام وتغيير الميزات وتراكم البيانات بمرور الوقت للحفاظ على الأداء. إعادة تعيين التوقعات ووضع أهداف جديدة، إذا كان الضبط الدقيق يجلب فوائد قصيرة الأجل فقط. |
يمكنك الحفاظ على حالة الأداء قبل تطور التدهور إلى مشاكل تؤثر سلبا على تجربة المستخدم خارج النطاق المقبول. يؤدي تغيير الأهداف إلى إعادة تعيين نموذج الأداء، ولا تضيع الوقت في تحسين النظام الذي وصل بالفعل إلى سعته. |
تحسين الكفاءة من خلال التحسين
تحسين كفاءة النظام ضمن أهداف الأداء المحددة لزيادة قيمة حمل العمل. |
---|
تستند الأهداف المحددة خلال المرحلة الأولية إلى مستوى معقول من تجربة المستخدم، مع مراعاة القيود المختلفة. يجب إعادة تقييم الأهداف وضبطها لتحسين التجربة بشكل أكبر. لزيادة تعزيز التجربة، يتطلب فهما واضحا لكيفية استخدام النظام، وكيفية تطوره، وكيف تغيرت المنصة أو التكنولوجيا بمرور الوقت. دورة المراقبة والتحسين والاختبار والتوزيع هي عملية مستمرة.
تسمح جهود تحسين الكفاءة لحمل العمل بالعمل مع استهلاك أقل للموارد. يمكن أن تتسبب في أن يكون حمل العمل في حالة توفير زائد مع سعة احتياطية. استخدم هذه السعة لتحسين موثوقية النظام. التخلص من القدرة على تحسين تكلفة النظام. أو أعد استخدام القدرة على دعم ميزات المنتج الجديدة على الموارد الموجودة.
عندما يكتسب النظام كفاءات، اغتنم الفرصة لتعيين أهداف أداء جديدة والحفاظ عليها.
النهج | الميزة |
---|---|
تخصيص دورات مخصصة لتحسين الأداء لمعالجة المتطلبات والتحسينات غير الوظيفية في المجالات الوظيفية. أهداف هذا التحسين هي الموارد والرمز والاحتفاظ بالبيانات واستعلامات قاعدة البيانات وغيرها. | يمكنك بناء ثقافة التحسين المستند إلى الأداء. يمكنك الاحتفاظ بالفريق مسؤولا عن مراقبة أنماط الأداء بشكل استباقي وكذلك ضبط التطبيق. |
قم بتحسين البنية بأنماط ومكونات تصميم جديدة، والتي يمكن أن تعزز الأداء، بطرق لم تفكر فيها سابقا بسبب محدودية الوقت أو الميزانية. | يمكن للتصميم والمكونات الجديدة تحسين النظام، مما يؤدي إلى تجربة مستخدم أفضل. على سبيل المثال، يمكنك استخدام التخزين المؤقت أو إضافة مكون شبكة تسليم المحتوى. ويمكن أن يؤدي أيضا إلى فوائد التكلفة على المدى الطويل. |
استخدم أدوات المراقبة لتحليل الاتجاهات التاريخية وتحديد التدفقات ومسارات تنفيذ التعليمات البرمجية التي من شأنها الاستفادة القصوى من جهد تحسين الأداء. نوصي بأدوات وملف تعريف مراقبة أداء التطبيق (APM) لهذا الغرض. تحديد المسارات الساخنة للعملية والازدحامات المحتملة الأخرى في النظام. |
عند تحديد المجالات الإشكالية المتكررة، يمكن للفريق التركيز حيث تكون المكاسب هي الأعلى. |
كن على اطلاع دائم بالابتكارات التكنولوجية التي يمكنها تحسين الأداء. استفد من الإصدارات الجديدة التي تم إصدارها لأطر العمل والمكتبات التابعة. وبالمثل، استخدم الميزات الجديدة لموارد النظام الأساسي أثناء تحديثها وتصحيحها. |
غالبا ما يكون اعتماد التكنولوجيا الجديدة هو العامل المحفز للبحث عن فرص للتحسين. يمكن أن تصبح التعليمات البرمجية التي ربما كانت بطيئة في الماضي أسرع مع هذه التحديثات. تريد أيضا أن تكون على دراية بكيفية تأثير بعض التحديثات سلبا على الأداء. |