28
Why Tornado shows the future of Web Servers, but not for the reason you might think
0 Comments | Posted by admin in Speculation
There’s been a lot of discussion around the release of Tornado, the web server that powers FriendFeed, which was recently Open Sourced.
Most of this discussion revolves around the technical merits of Tornado; whether other platforms are quicker, or whether it’s too limited. Whilst interesting, I think that many of these discussions are rather missing the point.
What I find interesting about FriendFeed is that it was built primarily because of the requirements of the way the FriendFeed site works. To give an overview without getting too much into the technical details, the difference is in the way real-time data is updated.
The way pretty much every other website works with regards to updating data is to poll for updates at regular intervals. FriendFeed works differently; they create a connection to the server, and sit there waiting for an update. When an update does happen, it displays immediately, because there’s no need to wait for a polling update to run.
A website that works like this, with every user having a connection open waiting for an update, isn’t feasible to create when using a mainstream web server (Apache, Nginx, IIS), because they are designed with the older ‘open a connection, send the data, close the connection’ way of working in mind.
I expect that as desktop software dies out and everything moves to a web-based ’software-as-a-service’ approach it will become increasingly common that parts of the site will run on custom-written software. The days of the dominance of Apache are over, not because another better webserver daemon has come along, but because with increasingly complex webapps one size no longer fits all.


