Sto progettando un server web che gestisce più cose come una chat da utente a utente, una chat da utente a gruppo, richiesta di amici, forum ecc.
Le chat devono essere chat in tempo reale, le richieste degli amici devono essere notificate in tempo reale all'utente, e gli utenti dovrebbero essere immediatamente informati sui nuovi argomenti sul forum.
Uso Spring e ho implementato polling lungo per ridurre la latenza e il numero di richieste. In teoria il polling lungo funziona bene per una cosa (una chat per esempio).
Il problema qui è che il client deve essere avvisato per diversi motivi: nuovo messaggio sulla chat, nuovo messaggio sul forum, nuova richiesta di amicizia, ecc. La soluzione ingenua sarebbe usare lunghe richieste di polling per ogni azione, ma conduce avere tutti i clienti che aprono quattro o cinque richieste contemporaneamente.
Il server può gestire facilmente questo o dovrei riuscire a creare un sistema in modo che ogni notifica venga restituita attraverso una sola richiesta? C'è un'altra soluzione?