Node.js

Node.js is a server-side Javascript framework for building fast and scalable network applications. It is event-driven and light weight, and is ideally suited for delivering large amounts of content in real time, between distributed devices. It is based on the well-proven V8 Javascript Engine from Google (which is also used in Google Chrome browser). Example applications that may benefit from using Node.js include chat / instant messaging, notifications, image slideshows, audio / video streaming, bidding / auctions and so on. 

We have used Node.js in conjunction with a PHP MVC framework (Symfony), to deliver instant alerts to logged users. The architecture followed was as follows:

The PHP server composed the notification message along with the necessary html markup, and made a http request to the Node.js server. The notification message was thus passed on from Symfony to Node.js, which delivered it to the appropriate recipient client in realtime. Thus, the notification was 'pushed' to the recipient, when required. This saved a lot of server load on Symfony, which would have otherwise been spent on processsing queries for notifications from all connected users, at regular intervals. 

We are confident of extending this knowledge to address resource-intensive network tasks and deliver high performance websites.