Home Kiss my ARSS - That's asynchronous RSS

Kiss my ARSS - That's asynchronous RSS

There are a couple problems with RSS. The first is that RSS polls for data. Instead of getting a notification that something is new RSS readers have to check for new information. This works fine for small sites with only a few subscribers but if your feed gets more popular you start to run into problems.

Even if I write nothing and have no new posts my RSS traffic still takes up a significant amount of bandwidth. Is there anything new? How about now? How about now? How about now? Perhaps now? RSS readers just keep polling my server.

Unfortunately there isn't a commonly accepted way for a server to just tell you when something is new. RSS readers ask for the entire file. If the RSS reader is smart enough and if the server is configured right the server may return a 304 error. (This tells the reader that nothing has changed) Unfortunately this doesn't happen often.

What if RSS acted more like a subscription rather then syndication technology? Imagine if RSS was combined with a web-service-like function to allow applications to register for events.

First time:
Get the RSS feed as you do today.
In the RSS declaration would be a new property containing a URL for registering and unregistering a subscription notification. Old readers can still get the RSS and keep asking... Anything new? How about now? New RSS readers could call the subscription notification service and register a callback URL.

When the callback URL is accessed that's the asynchronous notification that tells the RSS reader that new data is available. No more polling. Bandwidth scales with the number of subscribers and the number of posts, not with the polling frequency of RSS readers.

Tools such as blogger, wordpress, and other blogging tools could add such a webservice to their existing publishing steps without breaking old readers. Similarly both aggregators as well as client side tools could incorporate such technologies to improve the user experience.

Client side tools? How would that work? (I hear you ask)
In the same way that email is stored on a server before it is retrieved by your client side email reader an RSS notification could also be qued on a server.

Of course the approach I suggest is a touch more complicated but it also scales better and it allows for existing RSS readers to continue to be simple. As more browsers incorporate RSS the lack of a notification mechanisms is going to continue to grow into a larger issue.

Perhaps in the future I'll tell people to their ARSS off my site. ;)

This post is licensed under CC BY 4.0 by the author.