Sprawdzone metody i ograniczenia

Używając BatchJobService, weź pod uwagę te wytyczne:

  • Aby uzyskać większą przepustowość, należy wybrać mniejszą liczbę dużych zadań.
  • Zalecamy dodanie nie więcej niż 1000 operacji na AddBatchJobOperationsRequest i użycie sequence_token do przesłania pozostałych operacji do tego samego zadania. W zależności od treści operacji zbyt wiele operacji w jednym AddBatchJobOperationsRequest może spowodować błąd REQUEST_TOO_LARGE. Możesz rozwiązać ten problem, zmniejszając liczbę operacji i ponownie próbując AddBatchJobOperationsRequest.
  • Jeśli przesyłasz wiele zadań równoczesnych dla tego samego konta, zmniejsz prawdopodobieństwo pracy na tych samych obiektach jednocześnie przy jednoczesnym utrzymaniu dużych rozmiarów zadań. Wiele niedokończonych zadań (ze stanem RUNNING), które starają się zmienić dane tego samego zestawu obiektów, może prowadzić do poważnych problemów, które mogą prowadzić do spowolnienia pracy lub nawet awarii.
  • Nie przesyłaj wielu operacji, które zmieniają ten sam obiekt w tym samym zadaniu, ponieważ wynik może być nieprzewidywalny.
  • Aby zwiększyć przepustowość, uporządkuj operacje przesyłania według typu operacji. Jeśli na przykład Twoje zadanie zawiera operacje dodawania kampanii, grup reklam i kryteriów grup reklam, ułóż kolejność operacji w taki sposób, aby wszystkie operacje kampanii były poprzedzające wszystkie operacje grup reklam, a na końcu wszystkie działania związane z kryteriami grup reklam.
  • Nie wysyłaj zbyt wielu informacji o stanie zlecenia, ponieważ w przeciwnym razie może wystąpić błąd limitu liczby żądań.
  • Nie pobieraj więcej niż 1000 wyników na stronę. Wyniki zwrócone na stronę mogą zostać skrócone po stronie serwera z powodu obciążenia lub innych czynników.
  • Kolejność wyników będzie taka sama jak kolejność przesyłania w przypadku przetwarzania zbiorczego.

Ograniczenia

  • Każda maszyna BatchJob obsługuje maksymalnie milion operacji.
  • Każde konto może zawierać do 100 aktywnych lub oczekujących zadań jednocześnie.
  • Oczekujące zadania starsze niż 7 dni są automatycznie usuwane.