Tecnologia para aplicações Real Time com muitos usuários
4 respostas
javaspring-boot
henriquelssantiago
Qual tecnologia utilizar quando se precisa fazer uma aplicação real time(mais precisamente uma API e um aplicativo mobile) como a Uber. No caso da Uber, nós temos um aplicativo de motorista e um aplicativo de passageiro que estão sempre com o estado mais atual de suas entidades. O Motorista sempre com sua corrida em andamento e o passageiro também.
Quais tecnologias utilizar pra conseguir essa característica real time?
Caso saiba o direcionamento especificamente em Java ou mais especificamente Spring Boot, seria interessante…
1 - Usar um banco de dados RealTime (Firebase),
2 - A cada ação você chamar o método para preencher os dados novamente,
3 - Usar um WebSocket…
NÃO é um passo a passo, são 3 alternativas
henriquelssantiago
Obrigado pela resposta.
No caso, nós já utilizamos Firebase na nossa solução, mas está ficando muito caro e de uma forma que está complicado de acompanhar. Ai queremos migrar para uma estrutura nossa mesmo.
Essa questão do WebSocket, aparentemente é o que parece mais atender nossos requisitos. Acontece que estou com umas dúvidas que não estou conseguindo saná-las. No caso, as dúvidas são quanto a escala. Existe algum problema de termos dezenas de milhares de usuários conectados? É criado somente um web socket pra todos os usuários ou seria um web socket pra cada? Existe a possibilidade de enviar a informação somente para um usuário em específico? Como funciona?
rodriguesabner
Cara, essa parte de websocket eu só fiz no NodeJS, no Java não sei como funcionaria… Dá uma olhada nesse site:
Usando Netty SocketIO
javaflex
Recomendo ASP.NET Core com SignalR ou Nodejs conforme o colega acima já indicou.