شرح Apigee ادارة وتطوير واجهات التطبيقات

شرح Apigee ادارة وتطوير واجهات التطبيقات 

Apigee إدارة و تطوير واجهات التطبيقات

هو عبارة عن منصة لادارة وتطوير واجهات التطبيقات (interface)  بواسطة خدمات الواجهة عبر طبقة الوكيل (proxy layer) اذ هي اداة تساعد المطورين في برمجة الخدمة الخلفية (backend service) التي تساعدهم في تطوير مشاريعهم الخاصة وتوفير الامان له وتحديد مجموع المعدلات والحصص التي تلزمهم وكذلك تقدم لهم التحليلات الخاصة بذلك .

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

* ان كنت مهتم بهذا الأمر وترغب في الحصول على شهادة apigee certification تجعل منك محترف في ذلك ؟

سيساعدك موقع كورس سوفت في فهم هذا الموضوع تدريجياً بعد قراءة باقي التفاصيل المدعمة بالفيديو والتي سنسردها عليك عبر فقرات مبسطة .

 بعض الامثلة عن API :-

فيسبوك Facebook يتيح API للمواقع لتسجيل الدخول عن طريق فيسبوك  دون الحاجة إلى بناء نظام دخول جديد , اذا انت كنت ترغب بهذه الامكانيات فانت لا تهتم  بكيفية بنائها ولكن ما يهمك كيفية استخدامها لموقعك او تطبيقك .

كذلك خرائط جوجل Google Maps: يتيح لمطوري التطبيقات والمواقع عرض اجزاء من الخرائط لبعض الاماكن الخاصة بهم مكان.

 او عند شراء اي شئ اونلاين فان الموقع الذي ترغب في الشراء منه يستخدم API الخاصة بشركة VISA ويخصم المال من بطاقتك .

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

ما هو Apigee Edge ؟

Apigee Edge : عبارة عن عمارة هندسية صممت خصيصاً للمبرمج , تتكون هذه العمارة من طابقين اساسين وهما :

1- خدمات apigee: التي تستخدم في انشاء الخوادم (proxies) وادارتها ونشرها . تدور ايضا خدمات Apigee حول إنشاء واجهات برمجة التطبيقات ، سواء كنت بناء وكلاء API كمزود خدمة أو واجهات برمجة التطبيقات (API) اومجموعات تطوير البرامج (SDK) اوخدمات أخرى كمطور تطبيقات.

2- وقت تشغيل apigee runtime: عبر حاويات في مجموعة kubernetes تعالج كل حركة api تمر من خلالها .وتقدم لمستخدميها خدمات اخرى مثل :

  1. *خدمات منصة قوقل السحابية GCP :التي تساعد في ادارة المشروع وادارة الهوية وتوفر التسجيلات والتحليلات والمقاييس الخاصة .
  2. *خدمات الخلفية Back-end services: تُستخدم بواسطة تطبيقاتك لتوفير وصول وقت التشغيل إلى البيانات لوكلاء API الخاصين بك.

ورد في شرح وقت التشغيل كلمة كوبرنيتس فما هو kubernetes ؟

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

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

مكونات Apigee :-

يتكون Apigee من وقت تشغيل API والمراقبة والتحليلات وخدمات المطورين التي توفر معا بنية تحتية شاملة لإنشاء API والأمان والإدارة والعمليات.

  1. 1- وقت تشغيل Apigee /

يوفر أدوات لإضافة وتكوين وكلاء API ، وإعداد منتجات API ، وإدارة مطوري التطبيقات وتطبيقات العميل.

وينهي المخاوف الشائعة من خدمات الواجهة الخلفية. عند إضافة خادم وكيل API ، كما يمكنك من تطبيق السياسات على الخادم الوكيل API لإضافة الأمان .

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

  1. 2- Apigee API Analytics /

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

  1. 3- النظام البيئي لمطوري Apigee /

تقدم لك اليات ادارة مجتمع مطوري التطبيقات الذين يستخدمون خدماتك.

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

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

يأتي Apigee Flavor  كالآتي :-

⤂ Apigee اصدار SaaS : يركز على بناء خدماتك وتحديد واجهات برمجة التطبيقات لتلك الخدمات.

 Apigee hybrid: إصدار هجين يتكون من احد مؤقتات التشغيل apigee runtime ضمن المجموعة او عبر خدمة سحابية من اختيارك ، تعمل على تقييد حركة مرور API وبياناتها  ضمن حدود مؤسستك .

 التسريع الرقمي : عبر هذا الفيديو ستتعرف على كيفية قيام Apigee بمساعدتك في تطوير عملك .

كما ويساعدك Apigee ايضا في وضع خدماتك وجعلها متاحة على الانترنت :-

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

 مع التداخل لغات البرمجة بين اجهزة البائعين والمروجين والمشترين يعمل API على تسهيل هذه العملية عبر الربط المباشر بينها لانه غالباً ما تعرض الشركات خدماتها كمجموعة HTTP وتعرض على العميل ايضا بنفس الصيغة في التطبيقات المختلفة قد ترجع هذه الطلبات بصيغ اخرى مختلفة مثل xml او JSON عبر اجهزة المحمول والجهاز اللوحي كـ HTML5 .

ويجب على كل مقدم خدمة ان يضع في اعتباره :-

  1. الأمان: كيف سيتحكم في الوصول إلى خدماته لمنع الوصول غير المصرح به؟
  2. التوافق: هل ستعمل خدماته عبر منصات وأجهزة مختلفة؟
  3. قابلية القياس: كيف يمكنه مراقبة خدماته للتأكد من توفرها؟

الاختيار بين ادارة الخدمة وادارة API :-

عبر هذا الفيديو ستفهم الاختلاف بين ادارة الخدمة وادارة Api.

يمَكنك Apigee من :

  1. 1- توفير وصول امن لخدماتك باستخدام واجهة تطبيق مبسطة تعرض خدماتك وتجعل من السهل على المطوريين الاستفادة منها.
  2. 2- توفير واجهة تجعل من السهل على مطوري التطبيقات  الاستفادة من الخدمات التي تقدمها  .
  3. 3- التغيير في واجهة الخدمة الخلفية دون التاثير على واجهة التطبيقات العامة .
  4. 4- الاستفادة من التحليلات والميزات الاخرة لـ Apigee.
  5. 5- جعل المطوريين يصلون لوكيل API خاص بك بدل من يستهلكوا خدماتك بشكل مباشر . عبر تحديد نقطة نهاية وهي HIIP المتاحة للجمهور , لان Apigee  يقوم بمعالجة مهام الأمان لحماية خدماتك وتحليلها وتقييمها .  
  6. 6- يمكنك وكيل API من عزل المطوريين عن خدمة الواجهة الخلفية لتطبيقك لذلك لك كل الحرية في تغييرها لطالما ظلت الواجهة الرسمية ثابتة , ومن التغييرات في الواجهة الخلفية تغيير قاعدة البيانات او نقل موقعك او تطبيقك لاستضافة جديدة او اجراء اي تعديلات اخرى . يمكنك اضافة سياسات او اجراء تعديلات على وكيلك عبر الخادم Api  مثل تحويل البيانات والتصفية واضافة الامان والشرطيات والتعليمات المخصصة  دون اجراء اي تغييرات على خدمة الواجهة الخلفية .
  7. كما ويعتبر منتج API عبارة عن حزمة من وكلاء API وليس وكيل واحد يمكنك من خلال هذه الحزمة وضع حدود الوصول وتوفير الامان والسماح بالتحليلات . ومشاركة نفس وكيل API مع الاخرين .
  8. 7- يمكنك الاستفادة من مجموعة ملفات apigee docs خاصة بهذا الموضوع .وستجدها متوافرة عبر مجتمع مختص apigee community وذلك من الموقع الرسمي  او من googlecloud .

لايسعى المطورون لمعرفة كل شيء عن تنفيذك لخدماتك وكل ما يسعو له هو  :

1- عنوان URL لنقطة نهاية عبر API.

2- استعلامات او كلمات دلالية تم كتابتها في الطلب.

3- بيانات المصادقة .

4- تنسيق بيانات الاستجابة ، مثل XML أو JSON.

هل بإمكاني وضع خصائص مختلفة لكل منتج من منتجات API ؟

بالطبع لك ذلك . اذ انه من الممكن وعلى سبيل المثال توفير منتج API واحد بامكانية وصول منخفضة او 100 طلب في اليوم بسعر اعلى او 1000 طلب في اليوم بسعر اعلى بكثير او اكثر من ذلك في الطلبات والاسعار او جعله مجاني .

هل بامكان الاخرين مشاركتي في منتج API الخاص بي ؟ 

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

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

تتم عملية مشاركة APIgee عبر عدة خطوات :-

بعد ان تنشأ المنتجات ستحتاج الى اتاحتها للمطورين وذلك عبر انشاء وكيل او اكثر لواجهة المستخدم غير تلك التي تستخدم كـ URL خاصة بالجمهور .

وعبر انشاء منتج API يجمع كل الوكلاء الخاصيين بك ونشر المنتج والوكلاء و جعل المطوريين يعرفوا ان منتجك متاح  سيسعى المطورون مباشرة الى:

  1. 1- ربط تطبيقات العملاء الخاصة بهم مع منتج API الخاص بك 
  2. 2-تلقي مفتاح API لمنتج API.
  3. 3- انتظار ان تقوم بتمرير مفتاح واجهة برمجة التطبيقات لهم مع كل طلب.

يمكنك ايضا الولوج الى موقع Apigee الخاص عبر:

login.apigee.com سيمنحك الموقع apigee console وهي وحدة مختصة ضمن مجتمع تعليمي كامل يدعى  apigee tutorial .