New Proxy Solution

We’ve rolled out a proxy-host to buffer bandwidth on this site because it’s costing too much money!

We’re still storing your photos using Amazon S3 so they’re safe and secure for all time, but downloading them will now occur through Distributed Cache Node 1 hosted on FeiFei.us, a 2.8 TB / month server. So far (and you can go check out IMGFLYDCN1 yourself) it is caching 1,394,848,217 bytes and 14,201 files.

The reason for this is that using Amazon S3 to transfer files is prohibitively expensive. I can’t afford to be paying $300+ a month for bandwidth:

s3-costs.png

The solution is a distributed cache network I’ve rolled out, starting with Fei Fei dot US:

feifei.png

The technical details are quite simple: A visitor requests static.imgfly.com, which decides which cache server to forward the request to. Currently this is quite simple–all requests go to IMGFLYDCN1. In the future, as ImgFly grows, we can scale the bandwidth demands by adding additional servers in rotation.

My ultimate goal is to make this complete server-side configurable, so that I can simply add the server URL, login, and password to a form and automatically provision the machine with the proxy-client software. The server software will actively monitor the performance of client proxies, so if one goes down it can transparently fail over to the others. Additionally, the clients will make available metrics (hit / miss ratios, number of items, size, bandwidth used, bandwidth left) that the server can poll and track. It could be set up so that once a given client reaches a certain metric limit, it’s automatically pulled out of rotation.

As always, comments are appreciated!

This post is tagged with: , , , , , , , , , , , , , , , , , , ,

No comments yet. Be the first.

Leave a reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>