AWS Case Study: RedBubble
RedBubble is an online marketplace, print-on-demand service, and global community for artists, designers, and photographers. RedBubble members receive a free online portfolio where they can display their works of art. Members can also share with others in community groups and enter challenges to compete with their fellow artists. RedBubble’s marketplace and print-on-demand service allows members to have their creations turned into physical merchandise, such as framed prints, t-shirts, and cards. All of the product manufacturing, shipping, and customer care requirements are taken care of by RedBubble.
Currently, RedBubble has more than 300,000 members. The company hosts more than 5 million pieces of art and receives almost 2 million unique visitors each month.
Initially, RedBubble was hosting its applications and data on its own servers. However, due to the company’s growth, the cost of continually acquiring new hardware was prohibitive. In response, RedBubble turned to Amazon Web Services (AWS), attracted by the flexible pay-as-you-go pricing that AWS offers. In addition to the cost effectiveness, RedBubble CTO Paul Coia says, “We selected Amazon because of its reputation, service breadth, and third-party support.”
Why Amazon Web Services
RedBubble’s own image storage and processing application, called Imagehaus, runs on Amazon Elastic Compute Cloud (Amazon EC2) and uses Amazon Simple Storage Service (Amazon S3) for storage. Additionally, RedBubble is using Amazon Elastic Block Store (Amazon EBS) for block-level storage volumes that are attached to Amazon EC2 instances. Within the Amazon EC2 instance, Amazon EBS presents itself as a device.
The company accesses Amazon EC2 through Amazon Partner Network (APN) partner Engine Yard’s AppCloud, which is a third-party Platform as a Service (PaaS) for Ruby on Rails applications such as Imagehaus. When a RedBubble member uploads an art file to the RedBubble website, the file is stored in Amazon S3 until it needs to be retrieved and recreated in the requested file format by Imagehaus, which is running on a cluster of Amazon EC2 instances. RedBubble uses Amazon EBS to store application code and database files, which exist in a master-slave MySQL replication.
RedBubble receives approximately 5,000 additional art files every day. Using AWS is helping the company handle the growth and explore new options for its Imagehaus application. Coia says, “The elasticity of the service means that spikes in load due to business activity are not causes for concern. Also, it allows a business to be more experimental as you only run servers for as long as you need.”
RedBubble has many ideas for using other AWS services in the future, including incorporating Amazon Simple Queue Service (Amazon SQS) into an order fulfillment operation.
"AWS has revolutionized application delivery," Coia says, "Our use of AWS has enabled us to focus more on the creative aspect of solving business problems through software, and that is a great win for the industry. In terms of AWS itself, I find it admirable that it has taken a quieter role about its work in this area, letting the quality and innovation of its endeavors do the speaking.”