GO Behind the Scenes: Globus Online relies on Amazon's EC2
May 16, 2011 | Stuart Martin
I am delighted to write this inaugural post for "GO Behind the Scenes" -- our Dev column in the new Globus Online (GO) blog. Entries could come from any member of the GO development team. We're looking to provide a small window into what we do to make GO ..er..uh.. go! This one comes from Stuart Martin, the GO software development manager for the backend. (The backend is the engine that takes the file transfer requests and moves the bytes from point A to point B.) Since we like to plan big, we run all of GO on Amazon's EC2. This way, when the time comes, we will be able to run instances worldwide.
Also, it has removed the burden of dealing with hardware issues and hardware constraints. If a developer needs a GO instance for development, they just fire one up. If we need to stress test GO, we fire up 100 instances and riddle a test GO service with file transfer requests. If we want to see what throughput we can get with GO transferring between 2 High CPU with 10GigE endpoints, we can do that. This flexibility makes us more nimble and efficient. Along with many others, we got hit by the recent Amazon east coast region hiccup. Murphy's Law: the outage coincided with our plans to launch a new version of GO. Grrrr... We delayed the launch waiting for Amazon to return things to working order. At one point, we had to start up and migrate to new production backend instances. The affect to GO backend users was less than an hour of downtime. BTW: the front end survived with no downtime -- maybe that will be a coming entry. Overall, EC2 has served us well and has definitely been a win for GO. Nothing is for free, but all in all it's money well spent.