Jeśli naprawdę potrzebujesz okresowo wykonywać to wywołanie API dla każdego użytkownika, ustawiłbym to inaczej:
- Dodaj dwie kolumny do swojej tabeli:
lastUpdated
iisBeingProcessed
(lub coś podobnego); - Utwórz skrypt, który będzie uruchamiany co X (1?) minut za pomocą crona;
- W swoim skrypcie pobierz rekordy XX (10?) z najstarszym
lastUpdated
data i która nie jest przetwarzana i ustawisBeingProcessed
flaga; - Po zakończeniu każdego wywołania API zaktualizuj informacje o użytkowniku, w tym
lastUpdated
data lub godzina anulowania ustawieniaisBeingProcessed
flaga;
W zależności od tego, co Twój serwer może obsłużyć i na co pozwala API, możesz nawet skonfigurować wiele zadań uruchamianych jednocześnie / nakładających się, co skraca łączny czas na dużo aktualizacji.