Tags: co-op

Degrading polling

Co-op went live to the general public last Monday.  While Co-op successfully completed a beta period, this was no test for getting Lifehacked and delicious-populared.  In the late afternoon here in the US the service slowed to a crawl.

When the main workstream of a Co-op group is open, the browser polls every minute to check for new messages.  This is fine in the short term, but as more and more people signed up to try Co-op, more and more browsers were polling on the minute.

As of yesterday evening, Co-op now degrades that polling over time.  The longer a Co-op session sits idle without making any updates, the further apart browser polls occur.  We now keep track of when you last interacted with Co-op.  Every time one of these AJAX poll requests comes through we compare the current time to your last update time.  After 10 minutes of inactivity, polling changes to every 2 minutes.  After 1 hour of inactivity, polling changes to every 5 minutes.  After 2 hours of inactivity, polling changes to every 15 minutes.

We still have many performance improvements up our sleeves.  Our unique integration with Harvest time tracking also gives us unique problems to solve.  We are happy to continue solving these unique problems because we feel strongly that time tracking integration is a vital attribute to making a tool like Co-op truly useful.

blog comments powered by Disqus