- In-memory database (Redis)
- Propagator (Redis)
- WebSocket client (Socket.io)
Whenever using a stateless back-end and using WebSockets for real-time communication, you need a way to keep track of session in some way. Redis Pub/Sub can help in keeping track of client connecting to you back, without having to create a session.
The idea of stateless application is thougher to setup but easier to maintain. It also makes the scaling up way easier when containerizing your application on hundreds of containers that can be easily disposed.
Redis will support in managing and keeping track of open connections (WebSockt connections).