Czy są jakieś ograniczenia w liczbie połączeń, które wykonujemy do interfejsu graficznego Facebooka? a jeśli tak, to ile połączeń możemy wykonać dziennie na aplikację?
Czy są jakieś ograniczenia w liczbie połączeń, które wykonujemy do interfejsu graficznego Facebooka? a jeśli tak, to ile połączeń możemy wykonać dziennie na aplikację?
Odpowiedzi:
Najlepsza odpowiedź na to pytanie z innego forum , od Ash Rust w 2010 roku:
„Po kilku testach i dyskusjach z zespołem platformy Facebooka nie ma oficjalnego limitu, o którym wiem lub który mogę znaleźć w dokumentacji. Jednak znalazłem 600 połączeń na 600 sekund, na token i na adres IP, aby dowiedzieć się, gdzie oni cię powstrzymują. Widziałem też pewne ograniczenia szybkości na podstawie aplikacji, ale nie mam żadnych liczb.
Co do zasady, jedno połączenie na sekundę nie powinno mieć ograniczonej szybkości. Na pozór wydaje się to bardzo restrykcyjne, ale pamiętaj, że możesz grupować niektóre wywołania i używać interfejsu API subskrypcji, aby uzyskać zmiany ”.
Powyższe informacje są już nieaktualne w październiku 2015 r. Obecnie jest to 200 wywołań API na użytkownika w dowolnym 60-minutowym oknie zgodnie z https://developers.facebook.com/docs/graph-api/advanced/rate-limiting
Teraz to oficjalne :
Każda aplikacja otrzymuje przydział 200 wywołań API na użytkownika w dowolnym 60-minutowym oknie .
Z dokumentacji Facebooka z 7 października 2015 r. , Oto jak działa ograniczanie szybkości w Graph API:
Na przykład, jeśli Twoja aplikacja miała wczoraj 10 użytkowników i 5 nowych logowań dzisiaj, dałoby to bazę 15 użytkowników. Oznacza to, że Twoja aplikacja może wykonać ((10 + 5) * 200) = 3000 wywołań interfejsu API w dowolnym 60-minutowym oknie.
Więcej informacji tutaj: https://developers.facebook.com/docs/graph-api/advanced/rate-limiting
- Aktualizacja z dnia 12 kwietnia 2016 r. -
Facebook ma teraz pulpit limitów stawek, który jest znacznie łatwiejszy do sprawdzenia, czy limit kursu Twojej aplikacji przekracza. To wygląda tak:
Error: read ECONNRESET
???
estimatedCallsLeftForThisHour: 1234
po każdym telefonie.
Zgodnie z polityką deweloperów Facebooka „I. Funkcje i funkcjonalność” jedynymi ograniczeniami są:
(> 5 mln MAU) lub (> 100 mln wywołań API dziennie) lub (> 50 mln wyświetleń dziennie).
(Mau oznacza miesięcznych użytkowników)
Nie mówi, co zrobią po przekroczeniu limitów ...
Dzisiaj doszedłem do tego ograniczenia:
Połączenia z mailbox_fql przekroczyły współczynnik 300 połączeń na 600 sekund.
Ogólnie każda tabela ma inny zestaw limitów, w większości przypadków fql nie zwróci więcej niż 30 obiektów na fql. Wydaje mi się również, że można przekroczyć limity do jednej tabeli i jednocześnie można uzyskać dostęp do innej tabeli, pytanie brzmi, czy api jest blokowane (po przekroczeniu limitu) dla wszystkich użytkowników, czy tylko dla użytkownika, który ma przekroczono limity ... W każdym razie po przekroczeniu limitu trzeba poczekać około 10 minut, niż jest w porządku.
Więc technicznie rzecz biorąc, możesz uzyskać maksymalnie 300 * 30 obiektów na 10 minut w tabeli mailbox_fql.
Z dokumentacji na Facebooku
Ograniczanie stawki na poziomie użytkownika
To ograniczenie szybkości jest stosowane na poziomie użytkownika dla wszystkich wywołań API z wyjątkiem interfejsów API reklam.
Ograniczenia kursu mają miejsce w czasie rzeczywistym w przesuwanym oknie. Każde wezwanie otrzymuje punktację. Maksymalny wynik to n. Użytkownik gromadzi punkty w czasie na podstawie wykonanych połączeń. Po osiągnięciu maksymalnego wyniku zgłaszany jest błąd ograniczania przepustowości. Błąd, kod: 17, komunikat: Osiągnięto limit żądań użytkownika
Ograniczanie szybkości na poziomie aplikacji
To ograniczenie szybkości jest stosowane globalnie na poziomie aplikacji. Wywołania interfejsu API reklam są wykluczone.
Ograniczanie kursu odbywa się w czasie rzeczywistym w przesuwanym oknie przez ostatnią godzinę. Statystyki są gromadzone dla liczby wykonanych połączeń i zapytań, czasu spędzonego na procesorze, pamięci używanej dla każdej aplikacji. Istnieje limit dla każdego zasobu pomnożony przez miesięczną liczbę aktywnych użytkowników danej aplikacji. Gdy aplikacja wykorzystuje więcej niż dozwolone zasoby, zgłaszany jest błąd. Błąd, kod: 4, komunikat: Osiągnięto limit żądań aplikacji
sprawdź tę dokumentację https://developers.facebook.com/docs/reference/ads-api/api-rate-limiting/
Zgodnie z dokumentacją FB każdy element w partii liczy się jako osobne wywołanie.
Obecnie ograniczamy liczbę żądań, które mogą znajdować się w partii, do 50, ale każde wywołanie w partii jest liczone osobno na potrzeby obliczania limitów wywołań interfejsu API i limitów zasobów. Na przykład partia 10 wywołań interfejsu API będzie liczona jako 10 wywołań, a każde wywołanie w partii przyczynia się do ograniczenia zasobów procesora w ten sam sposób.
Sprawdź to: https://developers.facebook.com/docs/graph-api/making-multiple-requests https://developers.facebook.com/docs/marketing-api/api-rate-limiting