jsonip.com close to serving 10 million requests a month

I started a utility service in November 2010 called http://jsonip.com. At its core, all it does is return your IP address as a json object. Simple, right?

Its now close to serving *10 million requests a month.

* For the last month, there’ve been 9.3 million requests to the site and that’s increasing fairly steadily. I don’t know when it’ll breach 10 million, but it will soon.

It had occurred to me one afternoon that there should be a way for javascript running on a website to get the user’s IP address, if needed. Javascript can’t do this on its own because of how the browser sandbox is built. Implementing this on your own server is very easy, and is often done that way. There were other sites that did it too, like jsonip.appspot.com, but they were often down or in this case, “Over Quota”.

It was an easy weekend project. I wrote it in node.js and put it up on my Slicehost server, then posted a link on Hacker News. It got 10 votes, and that was it. I forgot about it for a while.

A few months later, imagine my vast surprise when someone else posted about the site on HN again. At almost 160 votes, I’d say that made the site get noticed.

At various times over the last 2 years, I’ve watched on Twitter as someone finds out about it and tweets it, then a veritable Cambrian explosion of re-tweets start spreading out. One of the most fascinating things I’ve seen in the last 2 years was watching one such occurrence as eventually hundreds of re-tweets were sent out over several days. If I knew more about data visualization techniques, it would have been very interesting to graph and watch how it happened. I feel quite¬†privileged¬†to have seen one of my projects go viral like that, as its never happened before.

Since then, I’ve made a few improvements and traffic has steadily climbed. It supports CORS, parameter requests, and a little /about info too. I’m eventually going to add IPV6 support, but that’s been tricky to figure out and the need has been low, so its been low priority. (If you are a reader that happens to know more about how to detect IPV6, ping me.)

Since its a simple service and only deserves a simple post, I’ll wrap it up here.

If you’ve read this far, check out my other project Popped At. Its an on-going experiment in visualizing real-time images being shared on Twitter that got its start as a “What’s happening on the ground” tool during the tsunami that hit Japan in March, 2011. It might warrant its own post at some distant point in the future.

Thanks for reading.

– Charles