حدود معدل واجهة برمجة التطبيقات

Hey all,
I’ve come across several (somewhat-old) articles on this forum that outline API rate limits (ex: Global rate limits and throttling in Discourse). I’m interested in this because, during the customization of our site, we’re making several API calls related to users and topics, and I’d like to ensure we keep the calls to a minimum.

Are these settings still configurable via the Admin panel? I haven’t come across anything thus far that relates to the Discourse API rate limits.

If not, is there a way to monitor the request activity somewhere?

Thank you in advance!

إعجابَين (2)

These API rate limit settings are not configured via the admin panel, but you will add them to the app.yml file on the server where your discourse site is hosted. So you will have to ssh into your server to make the change if you are self hosted.

3 إعجابات

شكراً لك @blake على الرد! سيعتمد فريقي في الواقع على Discourse للاستضافة، لذلك ليس لدينا أي من ملفات التكوين الخاصة بنا. هل هناك أي طرق لعرض حدود واجهة برمجة التطبيقات أو تعديلها إذا اخترنا هذا المسار؟

:+1:

إذا كنت تستخدم الإصدار المؤسسي (enterprise)، فيمكننا تعديل بعض هذه الحدود لك بالإضافة إلى تقديم بعض الإرشادات الخاصة بواجهة برمجة التطبيقات حتى نتمكن من تقليل حمل استخدام واجهة برمجة التطبيقات الخاص بك.

ما نوصي به هو أن يتعامل تطبيقك الذي يقوم بإجراء استدعاءات واجهة برمجة التطبيقات مع أخطاء 429 ثم يتحقق من ترويسة Retry-After التي تم استلامها، وهذا سيسمح لك بمعرفة متى يمكنك البدء في إجراء الطلبات مرة أخرى.

@blake شكراً مرة أخرى على المعلومات! أعتقد أن فريقي على الأرجح راضٍ عن حدود المعدل القياسية الحالية كما حددتها Discourse. هل يمكنك مشاركة ما هي هذه الحدود؟ لم أتمكن من العثور على قائمة نهائية حتى الآن.

نعم، الحدود الافتراضية مدرجة هنا لخطط pro/business.

@blake شكرًا لك مرة أخرى على المعلومات! هذا يتعلق إلى حد ما، ولكن هل تعرف ما إذا كان هناك جدول زمني لإضافة تخصيصات المترجم على مستوى السمات/المكونات؟ لقد رأيت أن هذه الميزة قد تم ذكرها في هذا المنتدى هنا وهناك على مدار العام الماضي، لكنني أعرف أنها لم يتم تنفيذها بعد.

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

لا يوجد جدول زمني لذلك على حد علمي.

ومع ذلك، أوصي باستخدام المكون الإضافي data-explorer لطلبات البيانات المخصصة مثل هذه. ما يمكنك فعله هو إنشاء استعلام SQL مخصص خاص بك وحفظه بحيث يحصل على معرف. بعد ذلك، يمكنك إجراء استدعاء API لهذا الاستعلام المحفوظ وسيقوم بتنفيذه ثم إرجاع JSON الذي تبحث عنه في طلب واحد.