I notice a lot of questions and articles talking about ajax comet. I also found some links to make it "scalable" since some of those posts talk about how it isn't that scalable with ASP.Net. I'm wondering if Microsoft has a solution they're working on or that is out that addresses an AJAX Comet solution for ASP.Net that is free.
As a side question, I'm wondering this because Microsoft.NET 4.5 talks about WebSockets, which seems to be a "better" solution than AJAX Comet? Or am I wrong on this one and they aren't competing technologies?
I'm wondering if Microsoft has a solution they're working on or that is out that addresses an AJAX Comet solution for ASP.Net that is free.
Scott Hanselmann who works for Microsoft recently blogged about SignalR. SignalR is an asynchronous signaling library for ASP.NET that Scott's team is working on to help build real-time multi-user web application.
In the comments Scott mentions that this may become a core part of ASP.NET if people like it and use it.
There's a good tutorial using SignalR with ASP.NET MVC 3 here:
http://sergiotapia.com/2011/09/signalr-with-mvc3-chat-app-build-asynchronous-real-time-persistant-connection-websites/
I'm wondering this because Microsoft.NET 4.5 talks about WebSockets, which seems to be a "better" solution than AJAX Comet? Or am I wrong on this one and they aren't competing technologies?
Comet is an umbrella term and there are many "Comet Servers" (see below) that use WebSockets as the transport mechanism when possible. Comet servers don't just use AJAX, XHR Long-Polling, Forever-Frame etc. They now use WebSockets and fallback to other transport mechanisms where required.
Here are just some of the "Comet Servers" that use WebSockets:
- StreamHub: http://streamhub.blogspot.com/2010/12/html-5-web-sockets-arrives-in-streamhub.html
- API ("Native WebSockets"): http://www.ape-project.org/
- Caplin Liberator: http://www.caplin.com/caplin_liberator.php
- Migratory?: http://migratory.ro/migratory-push-server.html
- CometD: http://cometdproject.dojotoolkit.org/documentation/2.x/howtos/websocket