फेसबुक की ग्राफ एपीआई कॉल की सीमा क्या है?


80

क्या हम फेसबुक के ग्राफ एपीआई में किए गए कॉल की संख्या में कोई प्रतिबंध है? और अगर यह वहां है तो हम प्रति दिन कितने कॉल कर सकते हैं?


जवाबों:


58

2010 में ऐश रस्ट से एक और मंच से इस सवाल का सबसे अच्छा जवाब :

"फेसबुक प्लेटफ़ॉर्म टीम के साथ कुछ परीक्षण और चर्चा के बाद, कोई आधिकारिक सीमा नहीं है जिसके बारे में मुझे पता है या दस्तावेज़ीकरण में मिल सकता है। हालांकि, मैंने प्रति के लिए 600 कॉल प्रति टोकन और प्रति आईपी पाया है। वे आपको रोकते हैं। मैंने कुछ एप्लिकेशन आधारित दर को सीमित करते हुए भी देखा है लेकिन कोई संख्या नहीं है।

एक सामान्य नियम के रूप में, प्रति सेकंड एक कॉल को सीमित दर नहीं मिलनी चाहिए। सतह पर यह बहुत ही प्रतिबंधात्मक लगता है लेकिन याद रखें कि आप कुछ कॉलों को बैच सकते हैं और परिवर्तन प्राप्त करने के लिए सदस्यता एपीआई का उपयोग कर सकते हैं। "


उपरोक्त जानकारी अब अक्टूबर 2015 तक अप्रचलित है। यह अब https://developers.facebook.com/docs/graph-api/advanced/rate-limiting के अनुसार किसी भी 60 मिनट की विंडो में प्रति उपयोगकर्ता 200 एपीआई कॉल है।


12
@mangobug प्रति टोकन और प्रति आईपी का मतलब है .. वास्तव में क्या है? क्या इसका मतलब है कि अगर मैं 2 अलग-अलग आईपी में एक ही टोकन का उपयोग करता हूं तो मैं # कॉल को दोगुना कर सकता हूं? यदि मेरे पास 2 एक्सेस टोकन हैं, तो क्या मैं कॉल की # दोगुनी कर सकता हूं, फिर भी उसी आईपी से उत्पन्न हो सकता है?
हेन्ले चिउ

2
@ मुंगोबुग: मुझे लगता है कि हेनली चिउ की अंतिम टिप्पणी / प्रश्न यहाँ काफी महत्वपूर्ण है :)
एरिक कप्लून

5
"लेकिन याद रखें कि आप कुछ कॉलों को बैच सकते हैं" फेसबुक स्पष्ट करता है कि यह आपकी सीमा की ओर प्रभावी एपीआई कॉल की संख्या को कम नहीं करेगा: "बैचिंग कॉल एपी कॉल की संख्या को कम नहीं करेगा।" Developers.facebook.com/docs/marketing-api/…
heyitsbmo

3
यह अब मान्य नहीं है, उपयोगकर्ता के उत्तर देखें> किसी भी 60 मिनट की खिड़की में प्रति उपयोगकर्ता 200 एपीआई कॉल
ब्रैंडन रोमानो

1
मैं अपने ऐप के लिए अधिक उपयोगकर्ता कैसे प्राप्त करूं? ऐप उपयोगकर्ता क्या है? यह कहाँ दिखाता है कि मेरे पास कितने हैं?
फराज

48

अब यह आधिकारिक है :

प्रत्येक ऐप को किसी भी 60 मिनट की विंडो में प्रति उपयोगकर्ता 200 एपीआई कॉल का आबंटन दिया जाता है ।

7 अक्टूबर 2015 तक फ़ेसबुक डॉक्यूमेंट से , यहाँ बताया गया है कि ग्राफ़ एपीआई पर काम करने की दर क्या है:

  • आपके Facebook AppId पर रेट लिमिटिंग की जाती है। यदि आपका ऐप एक दर सीमा पर पहुंचता है, तो उस ऐप के लिए किए गए सभी कॉल केवल प्रति उपयोगकर्ता के आधार पर सीमित नहीं होंगे।
  • दर सीमित करने की गणना उन उपयोगकर्ताओं की संख्या के आधार पर की जाती है, जिनके पास आपका ऐप पिछले दिन था और आज के नए लॉगिन को जोड़ रहा है। इससे आपके ऐप के पास उपयोगकर्ताओं की आधार संख्या होती है।

एक उदाहरण के रूप में, यदि आपके ऐप में कल 10 उपयोगकर्ता थे और आज 5 नए लॉगिन हैं, तो यह आपको 15 उपयोगकर्ताओं का आधार देगा। इसका मतलब है कि आपका ऐप किसी भी 60 मिनट की विंडो में (10 + 5) * 200) = 3000 एपीआई कॉल कर सकता है।

अधिक जानकारी यहाँ: https://developers.facebook.com/docs/graph-api/advanced/rate-limiting

- अप्रैल 12 2016 तक अद्यतन -

फेसबुक के पास अब एक दर सीमा डैशबोर्ड है , जो यह देखना बहुत आसान है कि आपके ऐप की दर सीमा अधिक है या नहीं। यह इस तरह दिख रहा है:

यहाँ छवि विवरण दर्ज करें


AFAIK की सीमा केवल ग्राफ एपीआई संस्करण 2.5 और इसके बाद के संस्करण वाले ऐप्स पर लागू होती है। पुराने ऐप्स की यह सीमा अभी तक नहीं है।
मारियस

क्या यह संभव है कि अगर हम त्रुटि को वापस करने के लिए सीमा, फेसबुक से Error: read ECONNRESETटकराते हैं ???
Konstantinos Natsios

वास्तविक सीमा प्रति उपयोगकर्ता नहीं है, यह दैनिक सक्रिय उपयोगकर्ताओं के लिए एक औसत है: "आपका ऐप कुल उपयोगकर्ता प्रति घंटे 200 कॉल कर सकता है। उदाहरण के लिए, यदि आपके ऐप में 100 उपयोगकर्ता हैं, तो इसका मतलब है कि आपका ऐप 20,000 बना सकता है। कॉल। यह एक प्रति-उपयोगकर्ता सीमा नहीं है, इसलिए एक उपयोगकर्ता उन कॉलों में से 19,000 बना सकता है और दूसरा 1,000 बना सकता है। इस सीमा की गणना पिछले घंटे में की गई कॉल की संख्या के आधार पर की जाती है। "
जेसन गोएमाट

2
यदि वे estimatedCallsLeftForThisHour: 1234प्रत्येक कॉल के बाद वापस आते हैं तो यह बहुत आसान होगा ।
अगस्त

अच्छा और सटीक जवाब!
एलेक्स प्लूटौ

20

फेसबुक देव नीतियों के अनुसार "मैं सुविधाएँ और कार्यक्षमता" केवल सीमाएँ हैं:

(> 5M MAU) या (> 100M API कॉल प्रति दिन) या (> 50M इंप्रेशन प्रति दिन)।

(मऊ का अर्थ है मासिक उपयोगकर्ता)

यह नहीं कहा गया है कि सीमा से अधिक होने के बाद वे क्या करेंगे ...

आज मैं इस सीमा तक भाग गया हूं:

मेलबॉक्स_fql की कॉल ने प्रति 600 सेकंड में 300 कॉल की दर को पार कर लिया है।

कुल मिलाकर हर टेबल की सीमा अलग-अलग होती है, ज्यादातर मामलों में fql अभ्यस्त प्रति फेकल 30 से अधिक ऑब्जेक्ट लौटाता है। मुझे यह भी लगता है कि आप एक तालिका में सीमाएँ पार कर सकते हैं और एक ही समय में आप अलग-अलग तालिका तक पहुँच सकते हैं, सवाल यह है कि क्या एपीआई अवरुद्ध है (सीमा से अधिक होने के बाद) सभी उपयोगकर्ता या केवल उस उपयोगकर्ता के लिए हद से ज्यादा ... वैसे भी, सीमा से अधिक होने के बाद आपको लगभग 10 मिनट तक इंतजार करना पड़ता है, ठीक है।

इसलिए तकनीकी रूप से आप टेबल मेलबॉक्स_फेकल में प्रति 10 मिनट में अधिकतम 300 * 30 ऑब्जेक्ट प्राप्त कर सकते हैं।


वे थ्रेसहोल्ड हैं जिन पर एक अनुबंध की आवश्यकता होती है, न कि कठिन तकनीकी सीमाएँ, जो कि मैंगोबग के उत्तर में हैं
Igy

वास्तव में नहीं "मेलबॉक्स_fql को कॉल प्रति 600 सेकंड में 300 कॉल की दर से अधिक है।" इसका मतलब है कि यह एक कठिन सीमा है जिसे वास्तविक जीवन में लागू किया गया था। यह भी सुझाव देगा कि अलग-अलग तबेल के लिए अलग-अलग सीमा है। (कौन सा सही है)।
विसेन स्केलोरु

6

फेसबुक प्रलेखन से

उपयोगकर्ता स्तर दर सीमा

यह दर सीमित करने के लिए विज्ञापन एप के अलावा सभी एप कॉल के लिए उपयोगकर्ता स्तर पर लागू किया जाता है।

स्लाइडिंग विंडो पर दर सीमाएं वास्तविक समय होती हैं। प्रत्येक कॉल को एक अंक सौंपा गया है। N का अधिकतम स्कोर है। उपयोगकर्ता किए गए कॉल के आधार पर समय के साथ एक स्कोर जमा करता है। जब अधिकतम स्कोर पहुंच जाता है, तो थ्रॉटलिंग त्रुटि को फेंक दिया जाता है। त्रुटि, कोड: 17, संदेश: उपयोगकर्ता अनुरोध सीमा तक पहुंच गया

अनुप्रयोग स्तर दर सीमा

यह दर सीमित रूप से ऐप स्तर पर लागू होती है। विज्ञापन एपीआई कॉल को बाहर रखा गया है।

पिछले एक घंटे के लिए खिसकने की खिड़की पर वास्तविक समय सीमा सीमित होती है। कॉल की संख्या और किए गए प्रश्नों के लिए आँकड़े एकत्र किए जाते हैं, प्रत्येक समय के लिए उपयोग किए जाने वाले सीपीयू, मेमोरी का उपयोग किया जाता है। किसी दिए गए ऐप के मासिक सक्रिय उपयोगकर्ताओं द्वारा गुणा किए गए प्रत्येक संसाधन के लिए एक सीमा है। जब एप्लिकेशन अपने अनुमत संसाधनों से अधिक उपयोग करता है तो त्रुटि डाली जाती है। त्रुटि, कोड: 4, संदेश: आवेदन अनुरोध सीमा पहुंच गई

इस दस्तावेज़ की जाँच करें https://developers.facebook.com/docs/reference/ads-api/api-rate-limiting/


एक उदाहरण है कि आप उपयोगकर्ता स्तर की कॉल और ऐप स्तर की कॉल कैसे कर सकते हैं? यह सब ऐप आईडी के माध्यम से जाता है, भले ही एक ऐप स्तर की सीमा हो? वे इस पर प्रलेखन के साथ महान नहीं हैं।
जोश बेदो

प्रलेखन का लिंक गलत है। सही एक डेवलपर्स है
।facebook.com/docs

यह उत्तर मार्केटिंग एपीआई के बारे में है, न कि ग्राफ एपीआई जैसे कि ओपी ने पूछा।
जॉन वाशम

3

एफबी डॉक्स के अनुसार, बैच में प्रत्येक तत्व एक अलग कॉल के रूप में गिना जाता है।

वर्तमान में हम उन अनुरोधों की संख्या को सीमित करते हैं जो एक बैच में 50 तक हो सकते हैं, लेकिन बैच के भीतर प्रत्येक कॉल की गणना एपीआई कॉल सीमाओं और संसाधन सीमाओं की गणना के लिए अलग से की जाती है। उदाहरण के लिए, 10 एपीआई कॉल का एक बैच 10 कॉल के रूप में गिना जाएगा और बैच के भीतर प्रत्येक कॉल एक ही तरीके से सीपीयू संसाधन सीमा में योगदान देता है।

कृपया इसे देखें: https://developers.facebook.com/docs/graph-api/making-multiple-requests https://developers.facebook.com/docs/marketing-api/api-rate-limiting

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.