C'è qualche restrizione nel numero di chiamate che facciamo all'API del grafico di facebook? e se è lì allora quante chiamate possiamo fare per ogni giorno?Qual è il limite di chiamata dell'API grafico di Facebook?
risposta
La migliore risposta a questa domanda da un altro forum
"Dopo alcuni test e la discussione con il team piattaforma di Facebook, non v'è alcun limite ufficiale sono a conoscenza o può trovare nella documentazione. Comunque, io' ho trovato 600 chiamate al 600 secondi, a gettone & per IP essere circa dove ci si ferma. ho anche visto un certo tasso based limitante, ma non hanno alcun numero.
Come regola generale, una chiamata al secondo non dovrebbe avere una frequenza limitata. In apparenza questo sembra molto restrittivo, ma ricorda che puoi bloccare alcune chiamate a utilizzare l'API di abbonamento per ottenere le modifiche. "
quindi qual è il problema? –
Sono un po 'confuso se si tratta di 600 chiamate/600 sec per token di accesso o per app. –
controlla la parte in grassetto. Secondo l'autore 'per token e per IP' –
Secondo Facebook dev policies "I. Features and Functionality" gli unici limiti sono:
(>5M MAU) or (>100M API calls per day) or (>50M impressions per day).
(Mau significa che gli utenti mensili)
Non dice cosa faranno dopo il superamento dei limiti ...
Oggi sono giunti a questa limitazione:
Calls to mailbox_fql have exceeded the rate of 300 calls per 600 seconds.
In generale, ogni tabella ha diverso insieme di limiti, nella maggior parte dei casi fql non restituirà più di 30 oggetti per ogni file. Inoltre mi sembra che puoi superare i limiti di una tabella e allo stesso tempo puoi accedere a una tabella diversa, la domanda è se l'API è bloccata (dopo aver superato il limite) per tutti gli utenti o solo per l'utente che ha ha superato i limiti ... Comunque, dopo aver superato il limite devi aspettare circa 10 minuti, che va bene.
Quindi tecnicamente parlando è possibile ottenere al massimo 300 * 30 oggetti per 10 minuti nella tabella mailbox_fql.
Quelle sono soglie su cui deve essere posto un contratto, non i severi limiti tecnici, che sono nella risposta di Mangobug – Igy
in realtà "Le chiamate a mailbox_fql hanno superato la velocità di 300 chiamate per 600 secondi". significa che è un limite difficile che è stato applicato nella vita reale. ciò suggerirebbe anche che esiste un limite diverso per tabel diversi. (Che è vero). –
Oh, suppongo che tu abbia ragione allora, fai meno chiamate, immagino – Igy
Dalla documentazione facebook
User Level Rate Limiting
Questa limitazione della velocità viene applicata a livello di utente per tutte le chiamate API ad eccezione di annunci apis.
Le limitazioni di velocità si verificano in tempo reale sulla finestra scorrevole. Ad ogni chiamata viene assegnato un punteggio. C'è un punteggio massimo di n. L'utente accumula un punteggio nel tempo in base alle chiamate effettuate. Quando viene raggiunto il punteggio massimo, viene generato l'errore di limitazione. Errore, Codice: 17, Messaggio: limite di richiesta dell'utente raggiunto
App Cadenza Limitazione
Questa limitazione della velocità viene applicato a livello globale a livello di applicazione. Le chiamate api degli annunci sono escluse.
La limitazione della velocità si verifica in tempo reale sulla finestra scorrevole per un'ora. Le statistiche vengono raccolte per il numero di chiamate e le query effettuate, tempo di utilizzo della CPU, memoria utilizzata per ciascuna app. Esiste un limite per ogni risorsa moltiplicato per gli utenti attivi mensili di una data app. Quando l'app utilizza più risorse consentite, viene generato l'errore. Errore, Codice: 4, del messaggio: limite di richiesta di applicazione ha raggiunto
controllo questa documentazione https://developers.facebook.com/docs/reference/ads-api/api-rate-limiting/
Dove è un esempio di come puoi effettuare chiamate a livello utente e chiamate a livello di app? Passa tutto attraverso l'ID app a prescindere da quale sarebbe il limite di un livello di app? Non vanno alla grande con la documentazione su questo. –
Il link alla documentazione è sbagliato. Uno corretto è https://developers.facebook.com/docs/graph-api/advanced/rate-limiting –
Secondo documenti FB, ogni elemento in un numeri di pezzi come una chiamata separata.
We currently limit the number of requests which can be in a batch to 50, but each call within the batch is counted separately for the purposes of calculating API call limits and resource limits. For example, a batch of 10 API calls will count as 10 calls and each call within the batch contributes to CPU resource limits in the same manner.
Si prega di controllare questo: https://developers.facebook.com/docs/graph-api/making-multiple-requests https://developers.facebook.com/docs/marketing-api/api-rate-limiting
Ora è official:
Ogni applicazione viene dato un riparto di 200 chiamate API per utente in qualsiasi finestra dato 60 minuti.
Dalla documentazione Facebook come di 7 Ottobre 2015, ecco come limitazione della velocità sulle API grafico funziona:
- limitazione della velocità è fatto sul tuo Facebook AppId. Se la tua app raggiunge un limite di tariffa , tutte le chiamate effettuate per quell'app saranno limitate non solo su base per utente.
- La limitazione della velocità viene calcolata prendendo il numero di utenti della tua app il giorno precedente e aggiungendo i nuovi accessi di oggi. Questo dà un numero di base di utenti che la tua app ha.
Ad esempio, se l'app avesse 10 utenti ieri e 5 nuovi accessi oggi, ciò fornirebbe una base di 15 utenti. Ciò significa che l'app può effettuare ((10 + 5) * 200) = 3000 chiamate API in una finestra di 60 minuti.
Maggiori informazioni qui: https://developers.facebook.com/docs/graph-api/advanced/rate-limiting
- Aggiornamento al 12 aprile 2016 -
Facebook ha ora un Rate Limit Dashboard, che è molto più facile da vedere se il limite di velocità della vostra applicazione è superiore. Ecco come si presenta:
AFAIK il limite si applica solo alle app con Graph API versione 2.5 e successive. Le app precedenti non hanno ancora questo limite. – Marius
E 'possibile se raggiungiamo il limite, facebook per restituirci l'errore 'Errore: leggere ECONNRESET' ??? –
Il limite effettivo non è per utente, è una media giornaliera per gli utenti attivi: "La tua app può effettuare 200 chiamate all'ora per utente in aggregato. Ad esempio, se l'app ha 100 utenti, significa che l'app può fare 20.000 chiamate.Questo non è un limite per utente, quindi un utente potrebbe effettuare 19.000 di quelle chiamate e un altro potrebbe fare 1.000.Questo limite è calcolato in base al numero di chiamate effettuate nell'ora precedente. " –
possibile duplicato del [Facebook Graph API limite dubbio] (http://stackoverflow.com/questions/5911068/facebook-graph-api-limit-doubt) –
C'è, ma puoi dimenticarti del tutto e utilizzare semplicemente http://api-turtle.launchrock.com per controllare e limitare il throughput delle API –