The usage is quite minimal, mostly for authentication and storing basic CRUD data. All of the real-time data flies through the servers mostly without being persisted. Firebase indeed gets quite expensive at scale. I'm cheap at heart so I avoid it when I can.
> how many concurrent websocket connections are you able to support per server?
That is a very good question. Nevertheless, I don't think that concurrent WebSocket connections are the bottleneck at the moment. Audio/video and game physics seem to be the biggest drain on the CPU usage which means before I'd get to max WebSocket connections, the machine would be overloaded before.
I did however have a problem though with throughput of a Socket.io server. A basic setup of Socket.io runs on a single thread which means it's easy to clog your event loop when you have a lot of concurrent guests in the same room. I managed to workaround this one quite well with a bunch of hacks - from packet sizes to designing features in a more networking-friendly way.
> how does firebase fit into your stack?
The usage is quite minimal, mostly for authentication and storing basic CRUD data. All of the real-time data flies through the servers mostly without being persisted. Firebase indeed gets quite expensive at scale. I'm cheap at heart so I avoid it when I can.
> how many concurrent websocket connections are you able to support per server?
That is a very good question. Nevertheless, I don't think that concurrent WebSocket connections are the bottleneck at the moment. Audio/video and game physics seem to be the biggest drain on the CPU usage which means before I'd get to max WebSocket connections, the machine would be overloaded before.
I did however have a problem though with throughput of a Socket.io server. A basic setup of Socket.io runs on a single thread which means it's easy to clog your event loop when you have a lot of concurrent guests in the same room. I managed to workaround this one quite well with a bunch of hacks - from packet sizes to designing features in a more networking-friendly way.