We currently have a product in WPF which we are looking to port to the web. The natural choice for us is to move the UI to Silverlight, leveraging our existing XAML code and skills.
However, I am unsure how to approach the comms between the SL client and our back-end server. We have an engineering simulation (which due to licensing restrictions, must be run within our organisation) running on our servers, and we want our Silverlight client UI to update at least every second with information extracted from the back-end simulation.
I'm currently investigating using a PollingDuplexHttpBinding to a ServiceContract (with CallbackContract for sending the updates), but I have a way to go to get this working reliably and efficiently.
Can anyone suggest other methods for exchanging data at this frequency? Although I've heard of things like REST, WebSockets and RIA, I have little knowledge of what they (or other technologies I may or may not have heard of) bring to the table.
The reasong the PollingDuplexHttpBinding is attractive to me is that it should work on my client's desktops without negotiating new firewall rules with various corporate IT departments. We want to be able to go into a client office, enter the URL in their browser, and start showing the product off straight away.
To summarise, my needs are:
* Comms between SL clients and our back-end
* Leveraging HTTP is preferable
* High frequency updates from server to client (every second a minimum)
Any/all suggestions/recommendations would be greatly appreciated.