“ساعدنا APISIX بشكل كبير في تحسين جودة الخدمة تحت بنية النشاط المزدوج (active-active). وقد دعمت ميزة المراقبة الكاملة الخاصة به بشكل فعال في حل المشكلات، كما أصبح تحديث قائمة الخدمات بسيطًا للغاية.”
Wenjie Shi
,
Senior Development Engineer at Infra Team
of RPC calls per day easily
in web traffic peak period
تأسست شركة Snowball Finance في عام 2010 كمجتمع استثماري، وقد أصبحت الآن منصة رائدة في إدارة التمويل عبر الإنترنت في الصين.
حاليًا، تجاوز عدد مستخدمي المنصة 43 مليون مستخدم، حيث استحوذت على 24% من حصة السوق في الصين. وتفخر المنصة بأن لديها أكثر من 2.95 مليون مستخدم نشط شهريًا.
قبل استخدام Apache APISIX، كانت هناك العديد من العيوب في النظام.
وحدات مصادقة SDK المعقدة تزيد من تعقيد النظام والمخاطر الأمنية عند الوصول إلى مركز المستخدم عبر المناطق بسبب أن بنية النشاط المزدوج متاحة فقط في وحدة خدمة السوق.
يفتقر OpenResty إلى نظام مراقبة قوي لتحقيق المراقبة، ويحتاج إلى نصوص مخصصة لتحقيق قابلية التوسع، مما يؤدي إلى ارتفاع تكاليف التطوير والتشغيل.
مركز تسجيل NGINX غير مكتمل وبدون آلية نبض يقلل من التوفر والاستقرار، مما يجعله غير قادر على التعامل مع الأعطال النظامية بسرعة.
تم استخدام بوابة API لإدارة المصادقة بشكل موحد. استبدلت Snowball Finance مصادقة JWT الأصلية ببرنامج jwt-auth الخاص بـ APISIX واستخدمت برنامج grpc-transcode للتعامل مع المصادقة المرتبطة بـ OAuth 2.0 السابقة.
تم إنشاء مراقبة متعددة الأبعاد باستخدام برنامج Prometheus الخاص بـ APISIX للمقاييس التالية: حالة اتصال NGINX وحجم البيانات الواردة والصادرة، معدل رمز حالة الخطأ HTTP، وزمن استجابة APISIX.
تم استخدام البرنامج الرسمي لـ APISIX apisix-seed لدمج ZooKeeper لاكتشاف الخدمات.
داخل Snowball Finance، تصل مكالمات RPC إلى حوالي عشرات المليارات يوميًا، ويمكن أن تصل ذروة الحجم إلى 50,000 QPS، مما قد يؤدي إلى تأخير عالي. يمكن لحلنا تخفيف هذه الحالات بسهولة. تم بناء الحل على NGINX وLuaJIT، ويمكنه التعامل مع حركة المرور بمعدل يصل إلى 18,000 QPS لكل نواة مع زمن استجابة يبلغ 0.2 مللي ثانية فقط.
عدم وجود طرق مصادقة موحدة في البنية الأصلية يؤدي إلى قابلية توسع ضعيفة وعمليات مرهقة. تتوقع Snowball Finance أن يكون للبوابة الجديدة قابلية توسع قوية. يدعم حلنا أكثر من 100 برنامج، مما يمكّن من التكيف السريع مع تغيرات أعمال Snowball Finance.
تتعلق التقنية الرئيسية داخل Snowball Finance بـ gRPC، لذا فهي تحتاج إلى بوابة جديدة لتوجيه واستدعاء الخدمات في طبقة البوابة، وتدعم أيضًا ترجمة البروتوكولات. يمكن لحلنا أداء وظائف مثل موازنة الحمل، تحديد المعدل، والمصادقة، ويمكنه أيضًا الترجمة بين البروتوكولات لدعم أنواع مختلفة من العملاء.
تأمل Snowball Finance في تحقيق المصادقة في طبقة البوابة، وتتطلب أن تكون تكلفة التحويل منخفضة نسبيًا. يدعم حلنا مجموعة متنوعة من طرق المصادقة مثل Keycloak وOAuth وOkta، وتكون العملية بسيطة ومرئية، مما يساعد بشكل فعال في تقليل تكاليف المصادقة لـ Snowball Finance.
نفذت Snowball Finance المصادقة الموحدة، وكسر الدائرة، وتحديد المعدل في طبقة البوابة، مما قلل من اقتران النظام وحسن جودة الخدمة في سيناريوهات مراكز البيانات المزدوجة.
أنشأت Snowball Finance حل مراقبة موحد من البوابة إلى طبقة الخدمة باستخدام برنامج Prometheus الخاص بـ APISIX وقدمت دعمًا ممتازًا لاستكشاف الأخطاء وإصلاحها على مستوى العالم.
قدم حلنا لـ Snowball Finance نهجًا أنيقًا لتنفيذ ترجمة بروتوكول gRPC وإدارة الخدمات.
لحل مشكلة الإدارة غير الملائمة للخدمات والاستثمارات المكلفة في البحث والتطوير، قمنا بتقديم APISIX كبوابة API لدينا. تتماشى الأداء الديناميكي لـ APISIX مع etcd بشكل كبير مع متطلبات منتجات Beeto.
APISIX تلبي متطلباتنا في تسريع التطوير والتكرار. ما يميز APISIX هو إضافاتها الغنية، التكوين المرئي، التحقق الدقيق، الميزات الوفيرة، المجتمع النشط، والأداء العالي.
Apache APISIX يدعم بروتوكولات متعددة، مما يوفر تكاليف كبيرة في البحث والتطوير ويمنح منصتنا حيوية لا تنتهي.