Building the clone
Now that we have a clear understanding of the clone we want to build, let's get into it. If you notice from the design discussion above, in terms of features the clone is relatively simple when compared with Flickr. However, you will realize to implement even just a portion of Flickr's core features does take some effort. In this chapter, the building of the clone will take up a significant part of the description. Now let's get on with it!
Configuration
Before we start building the application, let's configure AWS. From the preceding section you would have gotten the AWS access and secret keys. In config.rb
we enter these keys.
S3_CONFIG = {} S3_CONFIG['AWS_ACCESS_KEY'] = '<access key here>' S3_CONFIG['AWS_SECRET_KEY'] = '<secret key here>'
Then in models.rb
, we create a constant called S3
that is an interface to S3. We set this interface to be multi-threaded and to use HTTP as its protocol. We need the interface to be multi-threaded because we need interface...