Do websockets announce, and how does it horizontally scale?
-
This is a somewhat n00bish question. Apologies if I've made some incorrect assumptions.
Does NodeBB announce to listeners on channels for events (forum updated, new posts etc)? When that happens how does it work with multiple instances? I'm new to websockets but I believe a client would be connected to one instance from a set. If I have 2 nodebb instances behind a load balancer and one of them decides to announce a new event (new forums post for example) is it only going to announce that to the half of clients it is managing, or is there something in place to ensure all clients connected to all instances receive the announcement?
-
Yes socket.io announces to all clients, it does this by using redis pubsub. So if you have more than one nodebb instance it is advised to setup redis.
NodeBB/src/socket.io/index.js at master · NodeBB/NodeBB
Node.js based forum software built for the modern web - NodeBB/src/socket.io/index.js at master · NodeBB/NodeBB
GitHub (github.com)