Mysql
 sql >> Database >  >> RDS >> Mysql

Oltre 1000 chiamate API con 1 cron job?

Se hai davvero bisogno di effettuare periodicamente quella chiamata API per ogni utente, la configurerei in modo diverso:

  • Aggiungi due colonne alla tua tabella:lastUpdated e isBeingProcessed (o qualcosa di simile);
  • Crea uno script che venga eseguito ogni X (1?) minuti usando cron;
  • Nel tuo script, ottieni i record XX (10?) con il meno recente lastUpdated data e quella non in fase di elaborazione e impostare il isBeingProcessed bandiera;
  • Al termine di ogni chiamata API, aggiorna le informazioni sull'utente incluso lastUpdated data o ora e deselezionare isBeingProcessed bandiera;

A seconda di ciò che il tuo server è in grado di gestire e di ciò che consente l'API, puoi persino configurarlo per eseguire più lavori contemporaneamente/sovrapposti, riducendo molto il tempo totale per l'aggiornamento.