Nice! I put together a similar stack for a client last fall.<p>Did you consider skipping Nodejs and just rigging up a way for the browsers to subscribe directly to RabbitMQ over HTTP? We looked at that possibility but went with node (a) to make authorization code easier to write and (b) because of the availability socket.io as an easy abstraction over different socket-like techniques in the browser.<p>Also, are you worried that the node instances will get overwhelmed if they're receiving all activity through a fanout exchange? It sounds like each node instance will be responsible for figuring out how to route each piece of information coming through the system, instead of leaving this up to the RabbitMQ cluster.<p>Cheers though, looks like a fun project!