How to share real-time data?

How to share real-time data?

Post by Bruce W. » Sat, 10 Jan 2004 01:15:56

What .NET technology would allow multiple users to share data in

For example, an application for an office that lets everyone know who is
in the office and who is out. When someone signs out this is
immediately distributed to everyone running the program.

ASP.NET has no way to push real-time data to a browser, that I know of.

Conferencing applications like NetMeeting come to mind. For this, one
instance of the application must be designated the host, and all others
connect to this one. Is a designated host required for real-time

Is distributed sharing possible where there is no host? Could the
connection be made in a P2P fashion, like with Gnutella or Kazaa?

For this type of application I don't even know where to start research.
What's this called? What .NET Framework classes are made for this? Any
links to articles would be appreciated.

Thanks for your help.

How to share real-time data?

Post by Nick Harri » Sat, 10 Jan 2004 04:26:04

I see what your saying. But even in P2P, one of the P's is really the
server whenever it's delivering information. Microsoft suggests using
remoting for this type of application. However, you will still need a
method of "discovering" and authenticating the peers that you want to
connect with. Even Gnutella used a central server of client/servers so that
new clients could pull it down, otherwise there would be no way to connect.

Nick Harris, MCSD


How to share real-time data?

Post by Bruce W. » Sat, 10 Jan 2004 11:39:19


It seems that remoting is the answer, in the singleton pattern.

Here's what I decided to do but there's one thing I can't figure out.

I will host a No-Touch Deployment app under IIS. The server will
maintain state, in a text file or database. A user clicks on a link to a
.exe file in the bin directory which fires up the NTD app which, in my
office example, goes back to the server and gets a list of who is in the
office, using whatever remoting.

What I can't figure out is how the server can notify the NTD app
instances when someone leaves the office. John Smith decides to go
home, so in his NTD app he tells the server he's out of the office. How
can the server then tell all other NTD instances to refresh?

I guess the NTD apps could give their IP address to the server when they
start. Then its just a matter of the server calling a remote method on
the NTD application?

How to share real-time data?

Post by Paul Hethe » Sun, 11 Jan 2004 00:58:01

I would set up the NTD app to poll the server every 5/10 mins (or whatever
you decide)


How to share real-time data?

Post by Bruce W. » Sun, 11 Jan 2004 01:50:55


I considered this but that's hardly real-time information.

I need a way for the server to alert all listening NTD applications to
perform an update.

No-Touch Deployment is almost useless if it can't connect to anything.