0

I wonder how can I achieve this without UDP, I have a solution using UDP multicast: http://blogs.msdn.com/b/ncl/archive/2009/11/18/udp-multicast-in-silverlight-4.aspx but since this is for a high profile customer who has an intranet with port TCP 80 and TCP 8080 only enabled this solution is not possible. Yes, the application runs in an intranet environment.

I need a simple example how to send messages to all Silverlight clients over WCF.

I found this solution, but I have no idea how to implement that into Silverlight:

http://idunno.org/archive/2008/05/29/wcf-callbacks-a-beginners-guide.aspx

I'm out of ideas guys, please help.

Rumplin
  • 2,703
  • 21
  • 45

1 Answers1

1

Instead of receiving notifications async the Silverlight client should use polling instead. It can poll a WCF service that will fetch the data from a db...

This is the typical solution. Anyway, you have to handle the case in which the Silverlight client wasn't online and then it becomes online and need to know its state...

However, if you still want Silverlight to receive async notifications try searching for 'Full Duplex'. Here are some starting points: http://blog.developers.ba/post/2009/02/25/Silverlight-chat-application-using-WCF-full-duplex.aspx

http://weblogs.asp.net/dwahlin/archive/2008/06/16/pushing-data-to-a-silverlight-client-with-wcf-duplex-service-part-i.aspx

http://hindams.wordpress.com/2010/04/05/wcf-full-duplex-with-a-silverlight-application/

Yuval Peled
  • 4,988
  • 8
  • 30
  • 36
  • How does this effect server performance. I mean I need that thing to work for least 3000 users. – Rumplin May 30 '11 at 17:17
  • I would still go with polling. You can achieve better performance by load balancing (adding another service / mirror db) and by reducing the frequency of the updates (should ask yourself how real-time is this app? How many requests you'll have per sec on your db?) – Yuval Peled May 30 '11 at 17:20
  • It's 1 request for the server per hour, the server then stores the message to IIS cache and waits for new users. It only checks if the user already got the message. We already have a server farm and a content switch, so message distribution depends on which server the user ends up. Will look into it. Thanks. – Rumplin May 31 '11 at 04:36