مشاركة عبر


تصميم تجارب رائعة لمطوري واجهة برمجة التطبيقات باستخدام APIM وGitHub

Azure App Service
Azure Private Link
Azure Virtual Network

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

بناء الأنظمة

رسم تخطيطي لمكونات هذه البنية وسير العمل من خلال مداخل الإنترنت وخدمات Azure التي تشكل الحل، بما في ذلك Microsoft Entra B 2 C، وإدارة Azure A P I، وبوابة A P I، وخدمات خط العمل.

قم بتنزيل ملف PowerPoint لهذا التصميم.

تدفق البيانات

يتكون الحل بشكل أساسي من كتل الإنشاء التالية:

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

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

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

  • خدمات تطبيق خط العمل. هذه الخدمات مطلوبة لتقديم وظائف مداخل المستهلك والتطبيقات ودعم الرحلات المختلفة المدعومة في الحل.

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

يتدفق تسلسل المعالجة في هذا الحل كما يلي:

  1. يستورد ناشر واجهة برمجة التطبيقات مواصفات واجهة برمجة التطبيقات باستخدام مدخل Azure، ويجمعها حسب المنتج، وينشرها.

  2. يقوم ناشر واجهة برمجة التطبيقات بتحديث معلومات التسويق المتعلقة بالمنتج في مستودع GitHub المقابل.

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

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

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

  6. يسجل المستهلك مع النظام الأساسي ثم ينشط اشتراكاً لخدمة واجهة برمجة التطبيقات المعينة التي يهتمون باستخدامها.

  7. يستخدم المستهلك خدمة واجهة برمجة التطبيقات في تطبيقاته أو أجهزته.

  8. ينشئ استدعاء واجهة برمجة التطبيقات مقاييس حول استخدامها واستهلاكها، والتي يتم تخزينها بواسطة Azure في قواعد بيانات التعقب.

  9. يتم تصدير بيانات الاستهلاك وحفظها بشكل دوري في قاعدة بيانات مخصصة، عادة مستودع بيانات، لمزيد من التحليل.

  10. تحسب الوظيفة الخلفية الرسوم من بيانات الاستهلاك والاشتراكات المختلفة.

  11. يتم تخزين الفاتورة والمعلومات المتعلقة بالدفع داخل قاعدة بيانات المحاسبة. يتم استخدام هذه المعلومات لحساب إيرادات الخدمة.

المكونات

يتكون الحل من البرامج التالية كعروض خدمة (SaaS):

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

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

  • GitHub هو عرض SaaS شائع من Microsoft يستخدمه المطورون بشكل متكرر لإنشاء مشاريع البرامج الخاصة بهم وشحنها وصيانتها. يوفر ميزات مهمة يمكنك استخدامها في الحلول:

  • Azure App Service هي النظام الأساسي للحساب المدار بالكامل لاستضافة تطبيقات الويب المخصصة.

  • Azure Active Directory (Azure AD) B2C هو امتداد لمعرف Microsoft Entra الذي يمكن لتطبيقك استخدامه لإدارة هويات العملاء أو الشركاء الخارجية للوصول والتخويل. يمكنك الاستفادة من النظام الأساسي لتحديد Microsoft لتكامل الهوية والتخويل بسهولة في تطبيقاتك المخصصة.

تفاصيل السيناريو

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

حالات الاستخدام المحتملة

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

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

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

رسم تخطيطي يصف سلسلة قيمة A P I.

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

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

رسم تخطيطي لميزات وقدرات تجربة مطور A P I المحسنة.

قم بتنزيل ملف PowerPoint لهذا المخطط.

تتميز تجربة مطور واجهة برمجة التطبيقات بثلاثة مداخل:

  • مدخل المستهلك. يعمل مدخل المستهلك كموقع ويب تسويقي يعرض منتجات واجهة برمجة التطبيقات المتنوعة التي تقدمها المؤسسة.

  • بوابة المطور. يوفر مدخل المطور لمطوري الجهات الخارجية وثائق حول خدمات واجهة برمجة التطبيقات المختلفة وكيفية استخدامها في تطبيقاتهم.

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

المتطلبات الوظيفية

على مستوى عالٍ، تتناسب المتطلبات الوظيفية للنظام الأساسي لواجهة برمجة التطبيقات على نطاق المؤسسة مع ثلاث فئات، وهي عملية الإنتاج وإدارة الأنظمة الأساسية وتجارب المستهلك.

رسم تخطيطي يوضح ثلاثة متطلبات وظيفية واسعة للنظام الأساسي A P I على نطاق المؤسسة.

تصف الأقسام التالية القدرات داخل كل منطقة ميزة.

عملية الإنتاج

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

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

تتضمن عملية الإنتاج القدرات التالية:

  • منتجات واجهة برمجة التطبيقات. يتم توفير كتالوج واجهات برمجة التطبيقات هذا للمستهلكين. قد يتم تقديم منتج للشراء أو كخدمة مجانية.

  • المتغيرات. يجب أن تحدد تجربة المطور متغيرات أي منتج واجهة برمجة التطبيقات يتم تحقيق الدخل منه.

  • خطط الأسعار. حدد خطط الأسعار المختلفة لجعلها جذابة للمستهلكين.

  • التصنيف والمحتوى. يمكنك تعريف المحتوى وإنشائه - النصي وملفات PDF والصور وما إلى ذلك - المطلوب لاستراتيجية التسويق لمنتجات واجهة برمجة التطبيقات هذه.

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

إدارة الأنظمة الأساسية

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

تتضمن إدارة الأنظمة الأساسية القدرات التالية:

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

  • كتالوج واجهة برمجة التطبيقات. تحديد أصول واجهة برمجة التطبيقات التي يتم نشرها من خلال APIM. تطبيق النهج للتحكم في الوصول إلى واجهات برمجة التطبيقات واستخدامها. إدارة اشتراكات المستخدمين.

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

  • الفواتير والفوترة. حدد مهام سير العمل المتعلقة بالاشتراكات وإدارة الطلبات والفوترة والفواتير والفوترة.

  • الدعم. إنشاء أدوات وعمليات للتعامل مع طلبات الدعم.

تجربة المستهلك

يعتمد اعتماد النظام الأساسي لواجهة برمجة التطبيقات بشكل كبير على مدى سهولة المستهلكين:

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

عادةً ما يتم تقديم تجربة المستهلك من خلال مدخل ويب أو تطبيق الأجهزة المحمولة أو كليهما. يمكنك استخدام Azure AD B2C لتسهيل تسجيل المستخدم وإدارة الهوية. يتضمن Azure AD B2C دعماً لموفري هوية OpenID، مثل Microsoft وGoogle.

تتضمن تجارب المستهلك المكونات التالية:

  • كتالوج المنتج (API). إنشاء تجربة سوق للمستخدمين، المجهولين والمسجلين على حد سواء.

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

  • واجهة المستخدم (UI) / تجربة المستخدم (UX). تحديد تجارب القنوات التي تدعمها لتجارب المستخدم النهائي. قم بتضمين قدرات متعددة الأجهزة ومتعددة الأشكال، إلى جانب تصميم واجهة المستخدم الحديثة. إثراء التجربة من خلال دراسات قابلية الاستخدام.

الاعتبارات

تتناول المكونات في هذا السيناريو مشكلات الأداء والموثوقية والأمان.

تدعم APIM التحجيم التلقائي، والذي يوسع بسرعة قدرات APIM استجابة للأعداد المتزايدة من الطلبات الواردة. تدعم APIM أيضاً التكرار في المنطقة وعمليات التوزيع متعددة المناطق لتوفير المرونة وقابلية الوصول العالية. لمزيد من المعلومات حول التكرار في المنطقة، راجع دعم منطقة التوفر لإدارة واجهة برمجة تطبيقات Azure. لمزيد من المعلومات بشأن أمان إدارة واجهة برمجة التطبيقات (APIM)، راجع أساس أمان Azure لإدارة واجهة برمجة التطبيقات.

App Service هي نظام أساسي مدار بالكامل كخدمة تتميز بالأمان المضمن والتحجيم التلقائي مع اتفاقية على مستوى الخدمة التي تعد بقابلية وصول عالية. تتوافق App Service مع ISO وSOC وPCI، وتدعم مصادقة المستخدمين باستخدام معرف Microsoft Entra أو Google أو Facebook أو Twitter أو حساب Microsoft. باستخدام App Service، يمكنك أيضاً إنشاء قيود عنوان IP.

يوفر Azure AD B2C قابلية وصول عالية ومقاييس عالية لدعم مئات الملايين من المستخدمين. يدعم Azure AD B2C الاتصال OpenID وموفري هوية متعددين حتى يتمكن العملاء من اختيار موفر الخدمة المفضل لديهم. يدعم Azure AD B2C أيضاً المصادقة متعددة العوامل المستندة إلى التطبيق والمستندة إلى النهج، وإضافة طبقات إضافية من الأمان. لمزيد من المعلومات حول Azure AD B2C، راجع ⁧⁧⁩⁩ما هو Azure Active Directory B2C؟⁧⁧⁩⁩ لمزيد من المعلومات حول استخدام الهويات الخارجية، راجع الهويات الخارجية في معرف Microsoft Entra.

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

تحسين التكلفة

يمكنك تطوير مدخل المستهلك باستخدام خطة تسعير Team أو Enterprise ل GitHub. راجع مصفوفة الميزات لتحديد الخطة الأنسب لمؤسستك.

بالنسبة لـ APIM، يمكنك استخدام المستويات القياسية أو المتميزة. لفهم الاختلافات بين المستويات بشكل أفضل، راجع خيارات أسعار APIM.

بالنسبة إلى Azure App Service، راجع خيارات الأسعار المتوفرة لبيئات Windows وLinux لاستضافة تطبيقاتك.

المساهمون

تحتفظ Microsoft بهذه المقالة. وهي مكتوبة في الأصل من قبل المساهمين التاليين.

الكاتب الرئيسي:

الخطوات التالية