Beh, avevo anche altri motivi per non rispondere (non certo dovuti al "richiedente", eh) oltre al fatto che non ho certezze assolute.
Firebase, ad eempio, non l'ho mai usato, almeno per tre motivi:
1) se il signor Firebase sparisce, butti il tuo "sistema";
2) se il signor Firebase decide di far pagare anche i suoi servizi che attualmente sono gratuiti, ti ritrovi costretto a farlo;
3) se il signor Firebase cambia qualcosa nelle sue api, devi aspettare e sperare che venga aggiornata la libreria b4a.
Comunque non è improbabile che nella tua app che funzionava tu avessi bisogno di utilizzare un modulo di servizio sempre attivo, per ricevere sempre le notifiche.
Quindi, direi di usare un proprio server.
I classici spazi web con Apache-MySql... non sono sufficienti, per questo, dovrai affittare come minimo un VPS, a pochi euro al mese (6?), su Aruba o altrove (per fare prove, Amazon ha una versione gratuita limitata).
Software da utilizzare? Con un websocket server b4j hai molto controllo - per le prestazioni ci sono test effettuati da Erel (anche se non ha specificato che macchina abbia utilizzato per queste prove, nemmeno dopo mia richiesta, se non ricordo male).
Alternativa: MQTT, più limitato, secondo me, ma probabilmente più semplice.
20.000 utenti CONTEMPORANEAMENTE online penso che ti capiterà solo se sei il cugino di Whatsapp o Facebook
(però te lo auguro lo stesso
)