Sto lavorando su un'app Spring / JSF in cui ho 1 scheduler per caricare l'attività di sonno dell'utente da fitbit. In questo momento quello che faccio è che ogni volta che lo scheduler entra in azione, carico%% di% degli utenti da ALL
e per ogni utente invio una richiesta a fitbit api per recuperare mongoDB
attività e salvarlo in sleep
uno per uno.
A partire da ora, tuttavia, funziona bene, una volta che l'utente cresce a milioni, questo programmatore potrebbe richiedere del tempo per essere eseguito. Per non parlare, sto caricando TUTTI gli utenti in una volta.
In questo momento, quello che sto cercando di fare è cercare (cercare aiuto qui se sono sulla buona strada o no)
- Raggruppa gli utenti in qualche modo e recupera il sonno dell'utente per gruppo. Oppure posso usare
mongoDB
qui. - Per ciascun utente, posso generare un thread separato e lasciare che il thread finisca in modo indipendente senza eseguire il hog del programma di pianificazione che viene chiamato dal contenitore di primavera.
Sono sulla buona strada o c'è un modo migliore per farlo? Inoltre, proprio ora, sto usando solo l'attività del sonno, in futuro ci saranno più attività che devo recuperare da fitbit.