APISIX تعزز لينوفو لبناء بوابة خفيفة الوزن ولا مركزية

June 6, 2023

Case Study

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

نظرة عامة

عن لينوفو

Lenovo Group Limited، التي تأسست في 1 نوفمبر 1984 تحت اسم Legend والمعروفة باسم لينوفو، هي شركة تكنولوجيا متعددة الجنسيات أمريكية-صينية متخصصة في تصميم وتصنيع وتسويق الإلكترونيات الاستهلاكية وأجهزة الكمبيوتر الشخصية والبرمجيات وحلول الأعمال والخدمات ذات الصلة.

التحديات

  • وجود عدد كبير من واجهات API المتناثرة وسيئة الإدارة، بالإضافة إلى الاستخدام غير السليم لواجهات API داخل المؤسسة، مما يؤدي إلى ارتفاع تكاليف تشغيل تقنية المعلومات.

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

  • نشر عدد كبير من سيناريوهات API والمسارات في عقدة بوابة واحدة يمكن أن يسبب مشاكل في التأخير ويجهد النظام، في حين أن تثبيت etcd/ZK لكل بوابة API يمكن أن يجعل البنية ثقيلة جدًا.

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

النتائج

  • يمكن تحسين أداء البوابة إلى أكثر من 20,000 TPS مع الضبط المناسب.

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

  • إدارة دورة حياة API بالكامل بشكل موحد لجميع البوابات.

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

  • إنشاء تحليل ومراقبة شاملة لـ API.

الخلفية

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

Lenovo-system-architecture

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

إنها طريقة فعالة للشركات، مما يمكن المطورين من عدم الاضطرار إلى مواجهة مجموعة متنوعة من الخيارات التقنية.

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

لماذا اختارت لينوفو APISIX

اختارت لينوفو Apache APISIX بشكل رئيسي لأن APISIX يتمتع بمزايا في الجوانب التالية.

  • تم بناء APISIX باستخدام NGINX وLuaJIT، مما يمنحه أداءً عاليًا، مكتبة OpenResty غنية، وسهولة التخصيص. في الماضي، اعتمدت لينوفو على العديد من منتجات بوابات API التجارية التي كانت في الربع الرائد في Gartner. ومع ذلك، واجهت هذه المنتجات تحديات في تلبية الاحتياجات الفريدة للشركات، مثل تخصيص تدفقات التفويض ولوحات التحكم.

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

  • إعادة التحميل الديناميكي hot reloading يسمح بنشر APIs دون الحاجة إلى إعادة تشغيل الأنظمة، مما يقلل من وقت التوقف ويحسن تشغيل نظام الأعمال SLA.

  • تخصيص plugin مرن يمكن المطورين من إنشاء عمليات مخصصة تلبي الاحتياجات الفريدة للشركة.

  • مع الدعم القوي من مجتمع ونظام بيئي نشط مع مجموعة واسعة من الإضافات عالية الجودة مثل kafka-logger وauthz-keycloak، تستفيد لينوفو من وظائف محسنة وخيارات تخصيص واسعة.

  • تمكين جدار حماية تطبيقات الويب (WAF) يوفر إجراءات أمان أساسية وميزات تحكم في حركة المرور لتعزيز الحماية العامة وأداء نظام لينوفو.

  • رخصة مفتوحة المصدر صديقة: Apache License 2.0. تفكر لينوفو فقط في استخدام بروتوكولين، Apache License 2.0 وMIT من حيث الامتثال الأمني.

بوابة لامركزية وبوابة تطوير مركزية بناءً على APISIX

اتخذت لينوفو عدة إجراءات لدمج بنيتها مع APISIX.

أولاً، أنشأت لينوفو بوابة تطوير API المركزية لتحسين كفاءة وجودة إدارة API واستخدام API. ثم أنشأت مركز تسجيل مركزي (etcd) للتحقق من صحة البوابة ومزامنة اشتراكات API لنشر مراكز تسجيل متعددة.

API-Dev-Portal

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

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

الإنجازات بعد استخدام APISIX

بعد تنفيذ APISIX، تم إجراء عدد كبير من التغييرات داخل لينوفو.

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

يوفر APISIX قابلية توسع ملحوظة تمنح لينوفو المرونة اللازمة للتخصيص. مع APISIX، توفر بنية البوابة اللامركزية في لينوفو حلولًا عالية الأداء وقابلة للتوسع بشكل كبير لبوابات API على مستوى المؤسسة، مما يلغي بشكل فعال الاختناق الناجم عن المركزية.

في السابق، كانت موارد النظام تقيد عدد APIs التي يمكن نشرها في مجموعة واحدة إلى أقل من 1000. كان أداء البوابة مقيدًا بسبب بعض APIs التي تستهلك الكثير من الموارد، مما أدى إلى متوسط إنتاجية أقل من 4000 TPS. علاوة على ذلك، أي فشل في API سيؤدي إلى تدهور أداء توجيه API العام ويؤثر على جميع العملاء.

ومع ذلك، من خلال الاستفادة من APISIX، تمكنت بنية البوابة اللامركزية في لينوفو من نشر عقد البوابة وAPIs بشكل فعال بناءً على سيناريوهات الأعمال المحددة. يمكن تكوين كل عقدة بوابة وتحسينها بشكل مستقل وفقًا لموارد النظام وحجم العمل. وبالتالي، لم يعد هناك حد على العدد الإجمالي لـ APIs التي يمكن نشرها عبر الشبكة. علاوة على ذلك، مع الضبط المناسب، يمكن تحسين أداء البوابة بشكل كبير لتجاوز 20,000 TPS.

زيادة الأمان وقابلية التوسع

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

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

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

تحقيق إدارة دورة حياة API بالكامل

بوابة تطوير API المركزية تمكن مقدمي API من إدارة دورة حياة API بالكامل بشكل موحد لجميع البوابات.

استخدام بوابة تطوير API لإدارة معلومات API يمكن أن يمنع بشكل فعال فرق الأعمال المختلفة من تكرار أدوات إدارة API الخاصة بهم. بالإضافة إلى ذلك، فإنه يمكن من إمكانية إنشاء معايير تقنية موحدة لـ API، ومعايير توثيق، ومعايير أمان. لدمج الأنظمة غير المتجانسة المعقدة أو الأنظمة القديمة من مجالات أعمال مختلفة، توفر بوابة تطوير API أيضًا عمليات تفويض مختلفة ممتدة من إضافة APISIX لخدمات خلفية APIs، مثل basic-auth، OAuth2، Customized Header، وغيرها. حتى الآن، 100+ مطور يستخدمون بوابة تطوير API لإدارة API.

توفير سوق موحد لإدارة API

تلعب أسواق API، مثل تلك التي يوفرها APISIX، دورًا حيويًا في تبسيط عملية العثور على APIs المطلوبة للمطورين. كما تسهل هذه الأسواق مشاركة واكتشاف معلومات API بشكل فعال عبر الأقسام في الشركات الكبيرة، مما يقلل من الوقت المستغرق في البحث عن APIs.

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

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

تحقيق مراقبة محسنة

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

الخلاصة

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

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

Tags: