هندسة الأداء هي ممارسة تحسين أنظمة تكنولوجيا المعلومات لتلبية معايير السرعة والكفاءة.
هندسة الأداء ليست مجرد إجراء واحد، بل هي منهجية DevOps و shift left تتيح للشركات إمكانية تتبع الأداء وتحسينه في كل خطوة من دورة حياة تطوير البرمجيات (SDLC). والهدف منها هو ضمان أن الأنظمة تلبي مقاييس الأداء وفق معايير مثل السرعة والموثوقية والكفاءة وزمن الاستجابة.
تحدد فرق هندسة الأداء أولاً أداء النظام الأساسي من خلال اختبار الضغط. بعد ذلك، يستخدمون خط الأساس هذا لتحديد مشكلات الشبكة وفرص التحسين. وعند تحديد المعايير، يمكن للمهندسين البدء في إعادة تكوين الشبكة، وتنفيذ الإصلاحات، ومراقبة الشبكة باستمرار بحثًا عن مشكلات الأداء ولتخطيط السعة المستقبلي.
تُعد قابلية المراقبة هي الأساس الذي تقوم عليه هندسة الأداء. تجمع أدوات قابلية المراقبة البيانات غير المنسقة (السجلات والمقاييس وسجلات التتبع) التي تصف أداء النظام، وتستخدم فرق هندسة الأداء البيانات نفسها لتتبع تأثيرات عمليات الإصلاح التي أجروها. كما يستخدم مهندسو الأداء أدوات أخرى متنوعة لإدارة أداء التطبيقات ومراقبته، واختبار الضغط، وتدقيق المتصفح، والمقارنة المرجعية للحصول على أوضح صور ممكنة عن أنظمتهم.
هندسة الأداء هي التخصص الأوسع والأشمل لتحسين أنظمة تكنولوجيا المعلومات بهدف تلبية المعايير المحددة مسبقًا. إدارة أداء التطبيقات (APM) واختبار الأداء هما من الأنشطة التي تنطوي عليها هذه العملية الشاملة.
إدارة أداء التطبيقات هي ممارسة تستخدم أدوات برمجية وتحليل البيانات وعمليات إدارة التطبيقات لمساعدة المؤسسات على تحسين الأداء والتوافر وتجربة المستخدم لتطبيقات الأعمال. وبينما تغطي هندسة الأداء عملية التطوير بأكملها، تركز مراقبة أداء التطبيقات (APM) على اكتشاف المشكلات وإصلاحها في التطبيقات المباشرة.
وبالمثل، يُعد اختبار الأداء نشاطًا محددًا لاختبار أداء الشبكة أو التطبيق تحت ظروف مختلفة من خلال اختبار التحميل، واختبار الضغط، واختبار التحمل، وغيرها من الاختبارات. ومثله مثل مراقبة أداء التطبيقات (APM)، يُعد اختبار الأداء مجرد نشاط واحد ضمن الممارسة الأوسع لهندسة الأداء.
ابقَ على اطلاع دائم على أبرز الاتجاهات في مجالات الذكاء الاصطناعي، والأتمتة، والبيانات، وغيرها الكثير من خلال رسالة Think الإخبارية. راجع بيان الخصوصية لشركة IBM.
تُجرى عملية هندسة الأداء من خلال تسلسل مرن وشامل يشمل وضع المعايير، والاختبار وتحديد الأولويات، والتحسين، والتخطيط، ومراقبة الأداء.
أولاً، تحدد المؤسسة مستوى الأداء المطلوب لأنظمتها وتطبيقاتها لتحقيق أهداف العمل. ثم، يختبر مهندسو الأداء الأداء الحالي لتحديد نقاط مرجعية وتحديد كيفية تلبية المعايير.
تشمل المقاييس الشائعة للمعايير زمن الانتقال، ومعدل الإنتاجية، واستخدام الموارد، ومعدل الخطأ. ويمكن لفرق التطوير قياس هذه المقاييس على مستوى دقيق (داخل خادم أو خدمة معينة) أو على نطاق أوسع عبر التطبيق أو الشبكة بالكامل.
غالبًا ما تتضمن عملية المقارنة المعيارية أسئلة محددة حول متطلبات الأداء وبيئة التطوير. فعلى سبيل المثال، بدلاً من محاولة وضع حد عام لاستخدام وحدة المعالجة المركزية، قد يسأل المهندسون عما إذا كان استهلاك وحدة المعالجة المركزية يقل عن 60% عند استخدام 5000 مستخدم للتطبيق في وقت واحد.
باستخدام أدوات اختبار الأداء، يتحقق مهندسو الأداء من صحة بيانات الاختبار مقابل المعايير المعتمدة لتحديد مكان ونوع التغييرات التي يجب إجراؤها لتلبية مستويات الخدمة المطلوبة.
وتشمل الأشكال الشائعة لاختبار الأداء ما يلي:
يُبيّن اختبار التحميل مدى كفاءة النظام عند العمل ضمن الأحمال المتوقَّعة. يهدف اختبار التحميل إلى إظهار سلوك النظام عند مواجهته لأحمال تشغيل بأحجام معتادة في ظل ظروف عمل طبيعية، مع أعداد متوسطة من المستخدمين المتزامنين.
يضع اختبار قابلية التوسع النظام تحت الضغط من خلال زيادة حجم البيانات أو أحمال المستخدم التي يُجرى التعامل معها. ويُبيّن ما إذا كان النظام قادرًا على مواكبة الوتيرة المتصاعدة والاستمرار في تقديم الأداء المطلوب.
يدفع اختبار الضغط النظام إلى أقصى حدوده التشغيلية المعروفة—ثم إلى أبعد من ذلك—لتحديد مقدار ما يمكن أن يتحمله النظام بالضبط قبل الوصول إلى نقطة الانهيار.
يراقب اختبار الزيادة المفاجئة ما يحدث عندما تشهد حركة مرور المستخدمين أو حجم البيانات ارتفاعًا حادًا ومفاجئًا في النشاط. ويجب على النظام التكيف مع تلك التغيّرات مع مواصلة عملياته المعتادة.
يفحص اختبار الحجم كيفية تعامل النظام مع كميات كبيرة من البيانات، وتحديدًا ما إذا كان بإمكانه معالجة تلك البيانات وتخزينها بالكامل من دون تدهور في الأداء.
اختبار التحمل، أو اختبار النقع، هو عندما يراقب المهندسون النظام بمرور الوقت لاكتشاف مشكلات مثل التدهور التدريجي للبيانات أو تسرب الذاكرة.
بعد تحديد حدود النظام وأوجه القصور فيه، تبدأ عملية التحسين.
واعتمادًا على طبيعة عائق الأداء، قد يستخدم مهندسو الأداء إستراتيجيات تحسين مثل ما يلي:
بعد تحسين النظام، يراقب مهندسو الأداء باستمرار الانحراف عن خط الأساس الجديد ويخططون للنمو والنشاط المستقبلي.
تُمكّن قابلية المراقبة مهندسي الأداء من تحديد ما إذا كان نظامهم يعمل كما هو مخطط له. فمن خلال جمع وتحليل السجلات والمقاييس وسجلات التتبع، تتيح أدوات المراقبة لفرق تكنولوجيا المعلومات إمكانية أتمتة عملية تحديد المشكلات وحلها في الوقت الفعلي. وكلما كان النظام أكثر قابلية للمراقبة، كان بمقدور فرق تكنولوجيا المعلومات الانتقال بسرعة ودقة أكبر من تحديد مشكلة الأداء إلى معرفة سببها الأساسي، من دون الحاجة إلى إجراء اختبارات إضافية أو كتابة تعليمات برمجية جديدة.
يسمح تخطيط السعة لمهندسي الأداء بالبقاء متقدمين بخطوة على احتياجات العمل من خلال توقع المتطلبات المستقبلية للبنية التحتية لتكنولوجيا المعلومات. يتضمن تخطيط السعة تحليل الطلب الحالي والسعة المتاحة، ومقارنتها بإمكانات المؤسسة ومواردها. ثم تطور المؤسسات إستراتيجية قابلة للتعديل تُمكّنها من توسيع نطاق الموارد والإنتاج بكفاءة.
تشمل مزايا هندسة الأداء تحسين تجربة المستخدم، وتعزيز قابلية توسع البنية التحتية لتكنولوجيا المعلومات، وحل المشكلات بشكل أكثر كفاءة، وتحسين تخطيط السعة.
تحسن هندسة الأداء تجربة المستخدم من خلال إصلاح مشكلات الأداء مثل زمن الانتقال الطويل، ما قد يبعد المستخدمين عن الخدمة. ومن خلال تحسين عملية هندسة البرمجيات ومخرجاتها، يمكن أن تساعد هندسة الأداء على بناء الثقة مع المستخدمين وتحفيز تكرار الأعمال.
تقدم هندسة الأداء صورة واضحة عن المشكلات الموجودة داخل النظام. وتسهل هذه الصورة تجنب العوائق عند توسيع هذا النظام (إما أفقيًا، عن طريق إضافة خدمات جديدة، أو عموديًا، باستخدام المزيد من سعة الشبكة).
تساعد هندسة الأداء على ضمان تزويد المهندسين بالأدوات والمعرفة التي يحتاجونها لإنتاج أنظمة تلبي المعايير المحددة. ويمكن للمهندسين حل مشكلات الأداء بسرعة أكبر، ما يقلل من متوسط الوقت اللازم للإصلاح (MTTR)، وبتكلفة أقل، لأن المشكلات تُرصد قبل أن تتاح لها الفرصة لتعطيل أداء الشبكة بشكل كبير.
يمكن أن تساعد هندسة الأداء على تحسين فعالية تخطيط السعة من خلال تحسين فهم المهندسين لكيفية تصرف الأنظمة. فمن خلال عملية المقارنة المرجعية وممارسات المراقبة المستمرة، يكتسب المهندسون فهمًا أعمق لما تحتاجه شبكاتهم. وتساعد هذه المعارف المهندسين على اتخاذ قرارات أفضل بشأن السعة، ما يقلل من مخاطر الإنفاق الزائد أو الناقص على سعة الخوادم.
تشمل تحديات هندسة الأداء تعقيد الأنظمة الحديثة، وتحديد الأسباب الأساسية للمشكلات، ومراعاة المشكلات "طويلة الأمد"، وتطوير الأدوات والخبرات اللازمة.
تهيمن على بيئات تكنولوجيا المعلومات الحديثة خدمات مصغرة قد يصل عددها إلى الآلاف، وغالبًا ما تُستضاف في بيئات سحابة هجينة معقدة. يمكن أن تكون عملية جمع المعارف وتحليلها والتصرف بناءً عليها عبر هذه الأنظمة الموزعة عملية كثيفة الموارد وذات سير عمل غير متوقعة في بعض الأحيان.
يصعب التعقيد أيضًا تحديد الأسباب الأساسية الحقيقية لمشكلات الشبكة. فإذا كانت واجهة برمجة التطبيقات تستجيب ببطء، فقد يكون ذلك نتيجة سوء فهرسة قاعدة البيانات أو تسرب في الذاكرة أو مشكلة في التكوين. وقد يحتاج مهندسو الأداء إلى إجراء تحليل السبب الأساسي لتحديد الفرصة الفعلية للتحسين.
المشكلات طويلة الأمد هي ظروف الشبكة السيئة التي يواجهها عدد صغير من المستخدمين. وغالبًا ما تكون ناجمة عن مشكلات فريدة يصعب اكتشافها وتتجاوز الممارسات العادية للمراقبة. وفي سياق هندسة الأداء، تشكل هذه المشكلات تحديًا لأنها تهدد الظروف العامة للشبكة، في حين أن أسبابها الأساسية يصعب اكتشافها من خلال اختبارات الأداء العادية.
تتطلب ممارسة هندسة الأداء خبرة الموظفين وإمكانات منصات متطورة. فاختبار الأداء يتطلب عمليات محاكاة مكلفة وواسعة النطاق لظروف الشبكة. ويجب على الفرق فهم الأنظمة بما يكفي لتحويل كمية كبيرة من بيانات القياس عن بُعد إلى معارف عملية. وتتطلب الطبيعة المرنة والتكرارية لهندسة الأداء بنية مؤسسية يمكنها التعامل مع التغيير السريع.
IBM Cloud Infrastructure Center هو منصة برمجية متوافقة مع OpenStack، صُممت لإدارة البنية التحتية للسحابة الخاصة العاملة على IBM zSystems وIBM LinuxONE.
توفير بنية تحتية آمنة وجاهزة للذكاء الاصطناعي عبر بيئات السحابة الهجينة
سرّع البنية التحتية السحابية الهجينة وبنية مؤسستك، وعزّز أمنها، وحسّن أداءها بإرشادات خبراء IBM Technology Expert Labs.