One of the most exciting developments in web technology of the past year is, in my opinion, the development of cross-browser javascript socket libraries and the addition of web sockets as part of the HTML5 standard. Although push communication has been available for a long time, it was hard to implement, used proprietary technologies and was hindered by performance and scalability problems. But libraries like socket.io and services like Pusher have changed this and have made implementing two-way communications on the web very simple. I feel that we are just at the beginning of a new generation of exciting web applications.
For our cloud auction project, we want to use web sockets to send price, availability and product updates from the server to all active clients. It’s important that these updates are synchronized as much as possible, so that every user sees the same price at the same time. We want to avoid users hammering our servers by refreshing the page in their browser, pressing F5 every second. We are starting from our ASP.NET MVC cloud auction website, a standard website based on the MVC Internet Website template. I described several parts of it in other posts in this series.