Om du verkligen behöver göra det API-anropet för varje användare med jämna mellanrum, skulle jag ställa in det annorlunda:
- Lägg till två kolumner i tabellen:
lastUpdated
ochisBeingProcessed
(eller något liknande); - Gör ett skript som körs var X (1?) minut med cron;
- I ditt skript hämtar du de XX (10?) posterna med den äldsta
lastUpdated
datum och det som inte behandlas och ställ inisBeingProcessed
flagga; - När varje API-anrop avslutas uppdaterar du användarinformationen inklusive
lastUpdated
datum eller tid och avaktiveraisBeingProcessed
flagga;
Beroende på vad din server kan hantera och vad API tillåter, kan du till och med ställa in den så att flera jobb körs samtidigt/överlappar, vilket minskar den totala tiden att uppdatera mycket.