من فضلك تسجيل الدخول أو تسجيل لتفعل ذلك.

خبر مهم لمطوري المشاريع على GitHub. أعلن GitHub عن إعادة بناء شاملة لواجهة برمجة تطبيقات سجل النجوم (Star History API). هذا التحديث يهدف إلى معالجة مشكلات الأداء والخصوصية التي كانت تعاني منها الواجهة القديمة، ويوفر للمطورين طريقة أكثر كفاءة للوصول إلى بيانات نمو المشاريع.

لماذا كانت الواجهة القديمة مشكلة؟

كانت الواجهة القديمة تعتمد على جلب سجلات النجوم (stargazers) الفردية، ما أدى إلى عدة مشاكل. أولاً، كانت هويات المستخدمين متاحة للاستخدام الجماعي، مما استغلها المخترقون لحملات البريد العشوائي والتصيد الاحتيالي. ثانياً، كانت غير فعالة للغاية للمشاريع الكبيرة؛ فمثلاً، كان جلب السجل الكامل لمستودع مثل react/react الذي يضم حوالي 251,000 نجمة، يتطلب حوالي 2,511 طلبًا، ما يستهلك الموارد ويتجاوز حدود المعدل.

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

تحسينات جذرية في الواجهة الجديدة

الحل الجديد من GitHub يقدم للمطورين نقطة نهاية مباشرة (endpoint) ترجع ما يصل إلى 30 أسبوعًا من عدد النجوم اليومي في طلب واحد فقط، وبدون ربطها بأي هويات للمستخدمين. هذا التحسين يضمن معالجة البيانات بكفاءة أكبر عن طريق تصفية النجوم حسب الوقت قبل البدء في العد، مما يقلل بشكل كبير من عبء العمل على قاعدة البيانات. فمثلاً، أصبح جلب السجل الكامل لمستودع react/react يتطلب حوالي 24 طلبًا بدلاً من 2,511.

ولتعزيز الخصوصية، تم تقييد الوصول إلى قوائم النجوم والمراقبين (stargazer and watcher lists) لمديري المستودعات والمتعاونين فقط. يُشير GitHub إلى أن هذا الحل الجديد جاء نتيجة تعاون بناء مع مطوري أدوات مثل Star History والمجتمع الأوسع، الذين ساعدوا في تحديد الاحتياجات الفعلية للمطورين.

ماذا يعني هذا للمطورين؟

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

المصدر: github.blog

«ميتا» و«أوبن إيه آي» تسعيان لـ «تدليل» مستخدمي الذكاء الاصطناعي
قرار تاريخي: إنهاء الثواني الكبيسة لتجنب أعطال الأنظمة

Reactions

0
0
0
0
0
0
بالفعل كان رد فعل لهذا المنصب.

ردود الفعل