Quale sarebbe il modo migliore per aggiungere funzionalità di chat a un android, a un ios e a un'app Web? Il sondaggio è davvero pessimo come dicono le persone?
I requisiti sono user to user messaging e chat room.
Ecco il mio processo di pensiero:
- Lungo polling con nella cache di memoria. L'endpoint di polling lungo controllerà continuamente la cache in memoria. Semplice da implementare.
- Server basato su XMPP come OpenFire. Difficile da ridimensionare orizzontalmente. Alcune altre implementazioni si adattano bene, ma l'installazione è più complessa.
- Websocket con nella cache di memoria. Semplice da implementare.
- Polling breve con un ritardo ragionevole, ad esempio ogni due secondi per eseguire il ping del server. Query database relazionale. Archivia tutte le chat nel database. Lo hanno progettato in modo che se l'utente non fa nulla dopo 20 secondi, riceve un messaggio o interrompiamo il polling. Questo sembra il più semplice da implementare.
Credo che quello che mi chiedo sia il polling breve davvero così male. Sto facendo una startup e non voglio sbagliare investendo tempo con una soluzione che non scalerà bene.
Allo stesso tempo, penso che se ottengo finanziamenti / trazione, allora posso sempre investire in una soluzione più scalabile.
Se non guadagno soldi, però, non voglio investire tempo nell'app.
Qualche idea?