كيفية حساب تكلفة نشر بوابة API مفتوحة المصدر على AWS؟
March 11, 2024
الاختيار بين بوابة API مفتوحة المصدر وبوابة Amazon API
عندما يواجه المطورون قرار استخدام خدمة مُدارة بالكامل مثل بوابة Amazon API أو حل بوابة API مفتوحة المصدر، تظهر عدة عوامل حاسمة. تبحث هذه المقالة في هذه الاعتبارات لمساعدة المهندسين على اتخاذ قرار مستنير.
-
البيئات المتعددة السحابية والهجينة: تتفوق بوابة Amazon API في التكامل مع خدمات AWS الأخرى مثل Lambda، لكنها مرتبطة بشكل وثيق مع نظام AWS البيئي. على العكس، توفر بوابات API مفتوحة المصدر مرونة أكبر، مما يتيح النشر عبر GCP، Azure، السحابات الخاصة، أو البيئات الهجينة لهذه البيئات.
-
احتياجات التخصيص الواسية: للمشاريع التي تتطلب وظائف API مخصصة للغاية تتجاوز نطاق بوابة Amazon API، توفر الحلول مفتوحة المصدر تحكمًا أكبر وقدرة على تخصيص البوابات لتلبية المتطلبات المحددة.
-
حجم طلبات API المرتفع والتكلفة: مع نمو حركة مرور API، قد تصبح تكلفة بوابة Amazon API كبيرة. في المقابل، يمكن أن تكون بوابات API مفتوحة المصدر خيارًا أكثر فعالية من حيث التكلفة، خاصة في سيناريوهات الحركة المرورية العالية.
-
تحسين الأداء وزمن الاستجابة: توفر الخيارات مفتوحة المصدر تحكمًا أكبر في الأداء وزمن الاستجابة. يمكن للمهندسين قياس الأداء مباشرة واختيار بوابات API مفتوحة المصدر المُحسنة (مثل Apache APISIX، Kong، Envoy، Tyk) لتناسب تطبيقاتهم.
بينما توفر بوابة Amazon API حلًا مريحًا ومتكاملًا بشكل جيد داخل نظام AWS البيئي، توفر البدائل مفتوحة المصدر مرونة أكبر، وتخصيصًا، وتكاليف أقل، مما يجعلها مناسبة بشكل خاص لحالات الاستخدام المعقدة أو ذات الحركة المرورية العالية.
العوامل التي يجب مراعاتها في حساب التكاليف
تلعب بوابة API دورًا حاسمًا في إدارة حركة المرور بين تطبيقات العملاء وخدمات الخلفية، حيث تعمل كبرمجيات وسيطة مع مكونين رئيسيين: مستوى البيانات ومستوى التحكم.
مستوى البيانات: التوسع مع حركة المرور
مستوى البيانات، المسؤول عن معالجة طلبات API الواردة، يقوم بمهام مثل التوجيه، المصادقة، وتحويل البيانات التي تعتبر حاسمة لضمان تشغيل النظام بسلاسة. مع زيادة أحجام استدعاءات API، يحتاج مستوى البيانات إلى المزيد من موارد الحوسبة للحفاظ على الأداء الأمثل. لذلك، فإن تقدير حجم استدعاءات API بدقة أمر بالغ الأهمية لتحديد عدد حالات مستوى البيانات المطلوبة لضمان قدرة النظام على التعامل مع الطلبات بشكل فعال والحفاظ على التوفر العالي.
مستوى التحكم: التخطيط للتوفير العالي
يعمل مستوى التحكم كمركز رئيسي لبوابة API، حيث يدير التكوينات والسياسات، ويوجه كيفية معالجة مستوى البيانات للطلبات. على عكس مستوى البيانات، فإن متطلبات موارد مستوى التحكم لا ترتبط مباشرة بحجم استدعاءات API. ومع ذلك، فإن ضمان التوفر العالي لمستوى التحكم أمر بالغ الأهمية. لذلك، يحتاج المستخدمون إلى تخطيط تخصيص موارد مستوى التحكم بناءً على مستويات التكرار المطلوبة ومتطلبات وقت التشغيل.
تكاليف المراقبة والتسجيل
-
بوابة Amazon API: متكاملة مع AWS CloudWatch، توفر وظائف المراقبة والتسجيل التي تتكبد تكاليف إضافية. عند النظر في التكلفة الإجمالية لبوابة Amazon API، فإن تقييم متطلبات المراقبة والتسجيل أمر ضروري.
-
بوابة API مفتوحة المصدر: عادة ما تحتاج حلول المراقبة والتسجيل إلى اعتبارات منفصلة. يمكن النظر في خيارات فعالة من حيث التكلفة مثل Prometheus و Grafana، أو يمكن للمستخدمين اختيار خدمات إدارة السجلات المدارة التي تقدمها مزودي السحابة.
مثال على تقدير التكلفة: تقدير تكاليف معالجة 10 مليار طلب API
استخدام بوابة Amazon API
لنقدر التكلفة الشهرية لمعالجة 10 مليار طلب API باستخدام بوابة Amazon API. يرجى ملاحظة أن التقديرات التالية قد تختلف بناءً على التكوينات المحددة وأنماط الاستخدام.
الافتراضات:
- عدد طلبات API شهريًا: 10 مليار
- متوسط حجم الحمولة للطلب/الاستجابة: 1 كيلوبايت (1,024 بايت)
في السيناريو أعلاه، التكلفة الشهرية هي 9,030 دولار.
استخدام بوابة API مفتوحة المصدر Apache APISIX
بافتراض 20 يومًا في الشهر، مع 12 ساعة تشغيل يوميًا، لنحسب عدد الطلبات التي تحتاج بوابة API لمعالجتها لمعالجة هذه 10 مليار طلب API.
10000000000 / 20.0 / 12 / 3600 = 11574.074074074073
يظهر الحساب أن حوالي 11,000 طلب API تحتاج إلى معالجتها في الثانية. يمكننا استخدام مستويين للبيانات، كل منهما مُكون من 4 وحدات معالجة مركزية (vCPUs).
11574.074074074073 / 4 / 2 = 1446.7592592592591
في هذا السيناريو، كل وحدة معالجة مركزية تعالج حوالي 1400 طلب API في الثانية، وهو أمر سهل لبوابة API مثل Apache APISIX التي يمكنها التعامل مع عشرات الآلاف من الطلبات في الثانية.
بالإضافة إلى ذلك، يتم تخصيص نفس موارد الحوسبة لمستوى التحكم.
التكلفة الشهرية هي 195.06 دولار.
بمقارنة تكاليف معالجة 10 مليار طلب بين بوابة Amazon API وبوابة API مفتوحة المصدر، تكون النسبة 9030 / 195.06 = 46.29344816979391، مما يشير إلى أن تكلفة موارد السحابة لبوابة Amazon API أعلى بحوالي 46 مرة من بوابة API مفتوحة المصدر.
ومع ذلك، فإن استخدام بوابة API مفتوحة المصدر لا يلغي تكاليف البرمجيات. يحتاج المهندسون أيضًا إلى مراعاة تكاليف الترقية، والصيانة، بالإضافة إلى شراء الدعم الفني والمنتجات التجارية.
الخلاصة
من خلال مقارنة بوابة Amazon API وبوابة API مفتوحة المصدر Apache APISIX باستخدام أمثلة عملية، نجد أن بوابات API مفتوحة المصدر يمكن أن تقلل بشكل كبير من تكاليف برمجيات المؤسسات. على الرغم من أن بوابة Amazon API توفر حلًا مريحًا ومتكاملًا بشكل جيد داخل نظام AWS البيئي، فإن البدائل مفتوحة المصدر تتفوق في المرونة، التخصيص، والفعالية من حيث التكلفة، مما يجعلها مناسبة بشكل خاص لحالات الاستخدام المعقدة أو ذات الحركة المرورية العالية.