Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Choosing gems to work with AWS

Suppose a service written with RoR starts to use AWS S3 to store some data. What is the best library to use for working with AWS S3? Currently the main two alternatives for me are:

  • RightScale AWS Ruby gems http://github.com/rightscale/right_aws
  • AWS::s3 http://amazon.rubyforge.org/

What are their main advantages and disadvantages? What if later service will need to use other AWS (like EC2)? What other gems do you use and why?

Thanks!

like image 630
Sergii Vozniuk Avatar asked Feb 24 '10 18:02

Sergii Vozniuk


2 Answers

Both of the aws s3 gems you've mentioned work great, however if your assets are going to be big and require no post-processing it might be best if users upload directly to s3 with a flash app. This will save your server having to act as the middle man.

For EC2 you'll need to learn a lot about server provisioning. In the ruby community it seems to the two most popular solutions are:

Chef

  • http://wiki.opscode.com/display/chef/Getting+Started+with+EC2+Rails+Infrastructure
  • http://probablyinteractive.com/2009/3/29/Amazon%20EC2%20+%20Chef%20=%20Mmmmm.html
  • http://github.com/threedaymonk/chef-ec2

Sprinkle

  • http://redartisan.com/2008/5/27/sprinkle-intro
  • http://github.com/crafterm/sprinkle

There are also a bunch of third party applications for managing cloud infrastructure.

If you're going to be deploying a rails application I highly recommend you check out Heroku (http://heroku.com). It is, in one word, awesome.

like image 132
jonnii Avatar answered Oct 23 '22 00:10

jonnii


Amazon recently released an AWS SDK for Ruby which allows you to interact with s3 as well.

like image 24
Carlos SM Avatar answered Oct 23 '22 01:10

Carlos SM