Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Broadcast or Publish/Subscribe to update thousands of users

I have a client/server application that needs to keep each user's application up to date with a set of status information.

Typically there will be up to 1,000 concurrent users, but this may expand to 5,000 or beyond in the future.

Updates need to be provided approximately every 10 seconds so that user's view of the application is never out of date.

Which would be the best approach (this is a .Net C#) application?

  • A 'Broadcast' mechanism where each client 'listens' for an update message
  • A Publish/Subscribe mechanism where each connected client tellse the server to send it a message every 10 seconds
  • Client Request - every 10 seconds, each client requests the current data

The system I have inherited uses the last approach - and does not scale to the extent needed.

like image 886
Clicktricity Avatar asked Jan 23 '26 14:01

Clicktricity


1 Answers

I would recommend using an architecture that implements something along the lines of NodeJS, or in the .NET arena, something like SignalR (there are others popping out, take a look at the project here

https://github.com/SignalR

and the demo

http://chatapp.apphb.com

like image 119
BlackTigerX Avatar answered Jan 26 '26 04:01

BlackTigerX



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!