ما هي مراقبة واجهة برمجة التطبيقات؟

29 نوفمبر 2023

المؤلفين

Chrystal R. China

Writer, automation & ITOps

Michael Goodwin

Editorial lead, Automation & ITOps

ما هي مراقبة واجهة برمجة التطبيقات؟

مراقبة واجهة برمجة التطبيقات هي عملية مراقبة أداء واجهات برمجة تطبيقات المؤسسة وتوافرها ووظائفها.

وتحديدًا، تشمل مراقبة واجهات برمجة التطبيقات (API) تقييم استجابات الواجهات أثناء التشغيل الفعلي (In Production) لضمان توافقها مع معايير الأداء الخاصة بالمؤسسة، مع إرسال التنبيهات إلى الجهات المعنية عند حدوث أي خلل.ومع توجه الشركات بشكل متزايد نحو بُنى تحتية رقمية لتكنولوجيا المعلومات (IT)، أصبحت قابلية الاتصال السلسة بين الأطراف والأنظمة أمرًا بالغ الأهمية، وهنا يأتي دور واجهات برمجة التطبيقات.

تُشكّل واجهات برمجة التطبيقات (APIs) اللبنات الأساسية لمعظم تطبيقات الهاتف المحمول والويب، وتُعد بمثابة مركز تنسيق البيانات للعمليات والبروتوكولات والتطبيقات التي تُشكّل معظم النظام البنائي لتكنولوجيا المعلومات. فهي تُسهّل التواصل بين التطبيقات، وبين التطبيقات والعملاء، مما يُمكّن من التكامل السلس لمجموعة متنوعة من الخدمات.

أكثر من 75% من الشركات أفادت بوجود 26 واجهة برمجة تطبيقات (API) في المتوسط لكل تطبيق مُستخدم.1كما أفاد أكثر من ثلث الشركات بأن جميع تطبيقاتها تعتمد على واجهات برمجة التطبيقات (API)، وهي نسبة يُتوقّع أن ترتفع إلى أكثر من 50% خلال السنوات القادمة.1

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

منظر جوي للطرق السريعة

كن مطلعًا على آخر أخبار السحابة


احصل على نشرة Think الإخبارية الأسبوعية للحصول على إرشادات الخبراء حول تحسين الإعدادات متعددة السحابة في عصر الذكاء الاصطناعي.

أنواع مراقبة واجهة برمجة التطبيقات

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

مراقبة مدة التشغيل

تقوم مراقبة مدة التشغيل بإرسال طلبات اختبارية (pings) إلى نقطة نهاية واجهة برمجة التطبيقات (وهي الموقع الذي تُجرى فيه عمليات تبادل البيانات عبر الواجهة) على فترات منتظمة للتأكد من إمكانية الوصول إليها واستجابتها (أي "جاهزيتها"). إذا لم تستجب الواجهة، أو استغرقت وقتًا طويلاً في الاستجابة، يقوم النظام بإرسال تنبيه فوري.

تشمل مقاييس مدة التشغيل مراقبة نسبة التوفّر (نسبة الوقت الذي يمكن فيه الوصول إلى واجهة برمجة التطبيقات) وفترة التعطل (طول الوقت الذي يتعذر فيه الوصول إلى واجهة برمجة التطبيقات). ومن الشائع أن تنص اتفاقيات مستوى الخدمة (SLAs) على نسبة توفّر مطلوبة، وغالبًا ما تتطلب 99.9% من التوفّر (ما يُعرف باسم "ثلاث تسعات") أو أكثر.

مراقبة الأداء

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

المراقبة الاصطناعية

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

مراقبة المستخدم الحقيقية (RUM)

على غرار المراقبة الاصطناعية، تتيح RUM للفرق الاطّلاع على بيانات مفصّلة حول أداء التطبيق ووظائفه. لكن بدلاً من مراقبة تجارب مستخدمين محاكين، تقوم هذه المراقبة بتتبّع تجارب المستخدمين الحقيقيين، مما يوفر رؤية شاملة للواجهة الأمامية والخلفية للتطبيقات (Full Stack) لتجربة المستخدم، ويُسهّل اتخاذ قرارات دقيقة على نحو أكبر.

مراقبة التحقق

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

المراقبة الأمنية

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

تركز المراقبة الأمنية على تأمين واجهات برمجة التطبيقات (API) ضد الهجمات الخبيثة من المخترقين من خلال تنفيذ ممارسات مثل تتبع محاولات تسجيل الدخول غير الناجحة، والبحث عن الحالات الشاذة في أنماط استدعاء واجهة برمجة التطبيقات والتحقق من وجود أي اختراقات للبيانات. غالبًا ما تتضمن المراقبة الأمنية استخدام بروتوكولات التشفير والتحقق والمصادقة (مثل OAuth 2.0، ومفاتيح واجهة برمجة التطبيقات، والتحقق من صحة مخطط JSON، وغيرها)، للتأكد من أن المستخدمين المصرح لهم فقط هم من يمكنهم الوصول إلى بيانات واجهة برمجة التطبيقات. كما تُساعد على تأمين نقل البيانات بين الواجهات الأمامية والخلفية، والحماية من التهديدات الإلكترونية مثل عمليات الاختراق وسرقة البيانات  والهجمات الموزعة لحجب الخدمة (DDoS).

مراقبة التكامل

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

مراقبة الامتثال

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

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

مراقبة الإصدارات

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

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

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

عملية مراقبة واجهة برمجة التطبيقات

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

تحديد مقاييس الأداء

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

اختيار حلول مراقبة مناسبة لواجهات برمجة التطبيقات

نظرًا لاتساع نطاق بعض شبكات واجهات برمجة التطبيقات، فإن الاعتماد على أدوات مراقبة متقدمة يعد أمرًا بديهيًا. يمكن لمنصات إمكانية ملاحظة البيانات المتقدمة (مثل Postman وDatadog وIBM Instana Observability) أتمتة عملية المراقبة وتبسيطها، باستخدام ميزات مثل فحص كلمات HTTP الرئيسية ومراقبة خوادم DNS. وعند تقييم خدمات المراقبة، ينبغي أخذ الميزات وسهولة الاستخدام والتوافق مع البنية التقنية والتكلفة بعين الاعتبار لضمان الملاءمة.

تهيئة بروتوكولات المراقبة

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

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

إعداد التنبيهات

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

التحليل والتحسين

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

أكاديمية الذكاء الاصطناعي

تحقيق جاهزية الذكاء الاصطناعي باستخدام التنقية السحابية الهجينة

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

فوائد أدوات مراقبة واجهات برمجة التطبيقات

  • جداول مراقبة مؤتمتة ومُعدة مسبقًا.يمكن للفرق تشغيل برامج اختبار لواجهة برمجة التطبيقات بشكل مؤتمت على فترات منتظمة مع الحد الأدنى من الصيانة اليومية، وذلك عبر دورة حياة الواجهة.
  • قدرات اختبار موزعة عالميًا.يمكن للفرق اختبار نقاط النهاية حول العالم لفهم حجم المشكلات والأخطاء.
  • تحسين رؤية البيانات. يمكن للفرق رؤية بيانات المراقبة المتعلقة بواجهات برمجة التطبيقات التي تُديرها داخليًا، وتلك التي يديرها مزوّدون خارجيون (مثل شركات بطاقات الائتمان).
  • تنبيهات فورية بالأخطاء.تتلقى الفرق إشعارات فورية من خلال منصات المراقبة أو الرسائل النصية القصيرة أو البريد الإلكتروني أو غيرها من القنوات عند حدوث مشكلة.
حلول ذات صلة
IBM webMethods Hybrid Integration

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

استكشِف IBM webMethods Hybrid Integration
حلول وبرمجيات التكامل

أطلِق العنان لإمكانات الأعمال مع حلول التكامل من IBM، والتي تربط التطبيقات والأنظمة للوصول إلى البيانات الحساسة بسرعة وأمان.

استكشف حلول التكامل السحابي
خدمات الاستشارات السحابية 

اكتشِف قدرات جديدة وعزِّز مرونة الأعمال من خلال خدمات IBM الاستشارية للسحابة. اكتشِف كيفية المشاركة في إنشاء الحلول وتسريع التحول الرقمي وتحسين الأداء من خلال استراتيجيات السحابة الهجينة والشراكات مع الخبراء.

استكشف الخدمات السحابية
اتخِذ الخطوة التالية

 

يوفر IBM webMethods Hybrid Integration واجهة موحدة ولوحة تحكم مركزية لأنماط التكامل، والتطبيقات، وواجهات برمجة التطبيقات، والتعاملات بين الشركات (B2B)، والملفات، كما يعزِّز المرونة عبر المواقع والبيئات والفرق.

 

 

استكشِف IBM webMethods Hybrid Integration شاهد الميزة بصورة عملية