توصيات لتحسين تكاليف المكونات

ينطبق على توصية قائمة التحقق من Azure Well-Architected Framework Cost Optimization هذه:

CO:07 تحسين تكاليف المكونات. قم بإزالة مكونات حمل العمل القديمة وغير الضرورية وغير المستغلة بشكل منتظم أو تحسينها، بما في ذلك ميزات التطبيق وميزات النظام الأساسي والموارد.

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

التعريفات

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

استراتيجيات التصميم الرئيسية

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

تحسين ميزات التطبيق

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

تقييم قيمة ميزة التطبيق

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

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

  • أهداف العمل: تقييم كيفية توافق الميزة مع الأهداف الاستراتيجية للأعمال. ضع في اعتبارك كيف تدعم الميزات توليد الإيرادات أو رضا العملاء أو الميزة التنافسية.

  • التأثير على تجربة المستخدم: حدد تأثير الميزة على تحسين تجربة المستخدم وتحسين قابلية الاستخدام أو الإنتاجية.

  • التمايز: تقييم ما إذا كانت الميزة توفر نقطة بيع فريدة أو ميزة تنافسية مقارنة بالتطبيقات الأخرى في السوق.

تقييم تكلفة ميزة التطبيق

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

  • جهود التطوير: تقييم الوقت والموارد والخبرة المطلوبة لتطوير الميزة أو الميزات المحيطة والحفاظ عليها. وكثيرا ما تصبح الميزات غير المستغلة استخداما ناقصا مصدرا رئيسيا للديون التقنية.

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

  • البنية الأساسية واستخدام الموارد: تقييم تأثير الميزة على متطلبات البنية الأساسية، بما في ذلك موارد الخادم والتخزين وعرض النطاق الترددي.

  • تعقيد التكامل: تقييم تعقيد وتكلفة دمج الميزة مع الأنظمة الأخرى أو خدمات الجهات الخارجية.

  • اعتبارات الأداء: تقييم تأثير الميزة على أداء التطبيق، بما في ذلك قابلية التوسع ووقت الاستجابة واستخدام الموارد.

مراجعة قيمة ميزة التطبيق مع المساهمين

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

تحديد مستقبل الميزة

استنادا إلى تحليلك وتقييمك، حدد مستقبل ميزات التطبيق. قم بإزالة أو إعادة استثمار أو تحقيق الدخل من أي ميزة تطبيق لا توفر عائدا على الاستثمار:

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

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

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

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

تحسين موارد حمل العمل

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

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

  • التنبيهات.
  • إصدارات العرض التوضيحي.
  • إيقاف تشغيل البيئة.
  • إيقاف تشغيل الميزة.
  • عناوين IP.
  • جدران حماية الشبكة.
  • إثبات المفهوم.
  • لقطات.
  • حسابات التخزين⁧
  • بيئات الاختبار المؤقتة.
  • بيئات الفرز المؤقتة.

لإزالة الموارد غير المستخدمة في حمل العمل، ضع في اعتبارك الخطوات التالية:

  1. إجراء مخزون: قم بإجراء مخزون شامل لجميع الموارد داخل حمل العمل عبر البيئات.

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

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

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

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

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

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

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

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

تحسين موارد الإصلاح بعد كارثة. يتعلق تحسين بيئات الإصلاح بعد كارثة بضمان استخدام الموارد المخصصة للإصلاح بعد كارثة بكفاءة. تعد استراتيجية الإصلاح بعد كارثة الدافئة (النشطة-السلبية) مصدرا شائعا ل نقص استخدام البيانات. في استراتيجية التعافي من الكوارث الدافئة، تتلقى بيئة واحدة كل الحمل بينما البيئة الأخرى خامدة حتى يكون هناك سيناريو كارثة. لتحسين بيئة الإصلاح بعد كارثة، ضع في اعتبارك كيف يمكن أن يساعد نهج Hot (active-active) أو cold (active-off) أو active-redeploy في تجنب الموارد غير المستغلة بشكل كبير. فيما يلي نظرة عامة على هذه النهج الثلاثة للإصلاح بعد كارثة:

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

  • الخطط الباردة: يتضمن نموذج الإصلاح بعد كارثة الباردة بيئة احتياطية تظل خاملة حتى تؤدي الكارثة إلى الحاجة إلى تجاوز الفشل. نظرا لأن بيئة الاستعداد لا تعمل بنشاط، يتم تقليل التكاليف المتعلقة بعمليات الحوسبة والتخزين والشبكة. تدور نفقاتك حول تخزين النسخ الاحتياطية أو صور الجهاز الظاهري (VM) أو القوالب. يمكن أن يستغرق تجاوز الفشل في النموذج البارد وقتا أطول لأن الموارد تحتاج إلى التمهيد وقد تحتاج البيانات إلى استعادة. تأكد من أن وقت الاسترداد يتوافق مع أهداف وقت الاسترداد لأعمالك (RTO) قبل الالتزام بهذا النهج.

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

تحسين ميزات النظام الأساسي

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

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

  • تعطيل الميزات غير المستخدمة: تحديد ميزات النظام الأساسي التي تكلف المال وتعطيلها. قد يكون لديك لقطات تخزين غير الضرورية أو أقراص غير مستخدمة أو ميزات أمان زائدة عن الحاجة أو إمكانات شبكة غير مستخدمة.

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

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

  • التخلص من الأتمتة غير الضرورية: قم بتقييم عمليات الأتمتة الخاصة بك وقم بالقضاء على أي أتمتة غير مستخدمة قد تتحمل تكاليف إضافية.

  • التخلص من تكرار الأداة: تخلص من الأدوات التي لا تحتاج إليها أو الأدوات التي توفر نفس الوظيفة. تقييم التكرار المحتمل في الأدوات التي تستخدمها لإنشاء البرامج وكتابة التعليمات البرمجية والأمان والمراقبة. على سبيل المثال، إذا كنت تستخدم GitHub Actions لإنشاء برنامجك، فلن تحتاج إلى شراء أداة أخرى تنشئ البرامج. قبل شراء الميزات أو الأدوات، تحقق مما إذا كانت هناك بالفعل أداة في حمل العمل الخاص بك يمكنها القيام بهذه المهمة. القضاء على تكرار الأداة لتجنب إهدار المال و تحقيق أقصى استفادة مما لديك بالفعل.

منع المكونات غير المستغلة

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

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

  • تطبيق بيانات التعريف: تطبيق بيانات التعريف لتنظيم الموارد وتعقبها. يمكنك استخدام بيانات التعريف لتصنيف الموارد وتجميعها، مما يسهل تعقب الموارد المعزولة وحذفها وتجنبها. إنشاء استراتيجية بيانات تعريف متسقة عبر الموارد. ضع في اعتبارك إضافة مالكين أو مدة المورد المتوقعة (على سبيل المثال)، sunset-30dأو علامات أخرى.

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

  • حافظ على بساطة الأمور: قم بتبسيط البنية الأساسية وتقليل التعقيد للمساعدة في تقليل التكاليف. استخدم فقط الموارد والخدمات الضرورية التي تلبي متطلباتك.

تسهيل Azure

تحسين ميزات التطبيق: يمكنك استخدام Azure MonitorوApplication Insights لمراقبة استخدام التطبيق الخاص بك وتحديد المناطق المستخدمة أو غير المستخدمة. استنادا إلى الرؤى التي تم جمعها، يمكنك اتخاذ قرارات مستنيرة لإزالة الميزات غير المستخدمة أو غير المستخدمة أو تحسينها.

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

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

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

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

قائمة التحقق من تحسين التكلفة

راجع المجموعة الكاملة من التوصيات.