PubSubHubbub – the not quite real time webon Mar 08, 2010 in Software Architecture by Martin Tyler
There seems to be some confusion with some articles I have read about what PubSubHubbub (PuSH) does with regards to the real time web. This article should clear up some aspects of PubSubHubbub.
PubSubHubbub is a protocol to turn the polling (pulling) style of communication for RSS and Atom feeds into a push mechanism. This is great for those blogs that update very often, but most blogs will be much less frequent, so polling them for updates is very inefficient.
So does PubSubHubbub mean that all our news readers (apps or web based) suddenly become real time for any feed supporting PubSubHubbub? Do they get a new blog posting pushed to them as soon as it is published? Well, no, it doesn’t mean that at all.
PubSubHubbub is a server to server protocol. It is for news aggregators to receive blog updates, not for a news reader client to receive the updates. It is still up to each news reader to implement that last hop however they like. PubSubHubbub subscribers are meant to be semi permanent end points, not a news reader application or web page that may not be running, or, possibly more importantly, may not be publically addressable.
So this is good for the Google Reader server side infrastructure to receive blog posts as soon as they are published – but people looking at their Google Reader in their browser will not be receiving real time blog posts. They will be quicker since the server got them instantly – but I believe the Google Reader browser app polls the server for updates.
PubSubHubbub is a great advancement in real time feeds, however it’s just not quite what a lot of people seem to think it is. For it to achieve this the last hop needs to be real time too.