Blow Sh*t Up with Arnold Schwarzenegger … Be Drawn Into an Episode of the Simpsons … Celebrate the Patriots Victory with Rob Gronkowski.
These aren’t even bucket list items, these are unattainable items. That is, until Omaze gets involved. Omaze is an organization that was founded to drive significantly more money and awareness for deserving causes through the chance to live out dream experiences.
Charities offer up personalized events with their celebrity partners where everyone has the chance to win by donating to the cause. Each experience offers a range of reward levels from signed t-shirts to personalized Skype sessions to Twitter mentions, and once the experience is placed up on the Omaze site, the countdown begins to the winner of the grand prize. The growing number of high profile celebrities participating to provide such unique opportunities begs the question – what’s your dream experience?
From a technical perspective, the nature of the Omaze model leads to large spikes in traffic when a new campaign is launched. Even though these spikes are fairly predictable, resource provisioning and operations are critical components to be optimized and streamlined. (You wouldn’t want Arnold Schwarzenegger blowing up your backend after all!)
To handle this level of elastic scalability as a growing team, Omaze found a great fit in both Iron.io and Rackspace DevOps so that they could keep their focus on delivering the best experiences from top celebrities for great causes. At the end of the day, that’s what matters most.
Processing Workloads Asynchronously in the Background
In order to be more performant, Omaze recognized that a good portion of their workloads would be better run asynchronously in the background. When a new campaign is launched, they may get up to 10,000 donations in the first 5 minutes, where each one triggers a number of tasks from credit card billing to notification emails to database writes. Instead of processing these events synchronously and making the user wait, Omaze moved the tasks to IronWorker, where each could be triggered independently and run concurrently to handle the volume at scale on-demand.
More and more developers are taking advantage of this asynchronous pattern within their applications for more effective scalability and better user experiences. Decoupled frontends that focus on the immediate user response loop communicate via APIs to microservices that each perform a single responsibility. Here at Iron.io, we estimate that around half of all workloads in a typical application are meant to be run asynchronously, however orchestrating and processing these workloads within distributed systems is extremely complex. The Iron.io platform was built to solve this challenge in an industrial-strength manner that abstracts the complexities away from the developer, so that he or she can focus on writing the code that make their software compelling to end users.
Cloud Bursting to Distribute the Work
A big part of how Omaze is able to raise so much awareness and money is through highly targeted email campaigns to its previous donors. These efforts tend to perform 20-25% better than other channels in terms of conversions – a testament to the overall satisfaction of the community. Who wouldn’t want another opportunity to live out a dream experience?
To effectively handle these large volumes of emails, Omaze leverages IronWorker to segment each campaign into more manageable chunks that are then distributed over a number of workers. A master worker task goes through the user base and determines the right segment for the user based on a number of parameters. The user data is delivered to IronMQ, where slave workers pull from each segment queue to process and deliver the email.
Continuous Integration and Choreography
A key component to Omaze’s rapid success with their growing team has been their ability to streamline operations in collaboration with the Rackspace DevOps business unit. Modern distributed applications have more moving parts than a traditional monolithic application, requiring advanced configurations around infrastructure provisioning, automated testing, continuous integration, continuous deployment, and workload management. Rackspace helps companies like Omaze transform their operations to get faster innovation, accelerated time to market, improved deployment quality, better operational efficiency, and more time to focus on their core business goals.
Omaze entered the Rackspace DevOps program in August 2014 and immediately noticed improvements through its managed services and tier-one triage support 24/7 across the globe. Promotions from large global brands such as Disney and Coca-Cola leads to up to 8 billion sessions per day, and each piece of the complete architecture needs dedicated attention from Chef scripts for server automation to New Relic for performance monitoring.
Not only does Rackspace package all of the tools needed to run and maintain a production-ready application at scale in a cohesive manner, they are on hand with the Fanatical Support Promise® that has made them a leader in their space.
Iron.io + Rackspace = Lean Transformation
“The less system administrative work we could take on the better, so it makes a ton of sense to let that be managed by people who are experts in tuning the queuing as well as the underlying operating parameters themselves for best performance.”
– David Lieberman, VP of Engineering, Omaze
Omaze is an innovative platform to raise money and awareness for causes by offering all donors and fans the opportunity to win once-in-a-lifetime experiences with the world’s biggest celebrities. They’ve launched over 250 life-changing experiences — everything from a walk-on role in Star Wars: Episode VII to riding in an RV with the cast of Breaking Bad to going on a date with George Clooney in NYC. They’ve raised millions for worthy causes and generated significant awareness by regularly appearing in outlets like the Today Show, Vanity Fair, CNN, Good Morning America, Jimmy Kimmel, and many others.
Omaze is on a mission to reinvent charitable giving by creating a cause marketplace. Leveraging storytelling, social media marketing, celebrity influence, and data science, they help charities raise more funds and awareness and create greater impact than they ever have before.
About Rackspace DevOps
Rackspace is the #1 managed cloud company. Its technical expertise and Fanatical Support® allow companies to tap the power of the cloud without the pain of hiring experts in dozens of complex technologies. Based in San Antonio, Rackspace serves more than 300,000 business customers from data centers on four continents.
With the Rackspace DevOps Automation solution, Rackspace automates entire application environments by treating infrastructure as code. Through configuration management tools such as Chef and Windows PowerShell® Desired State Configuration (DSC), Rackspace DevOps Engineers automate the deployment and scaling of applications and manages and supports their environments 24x7x365. DevOps Engineers continuously monitor application performance utilizing tools such as New Relic, Logstash, and Kibana to identify and respond to performance anomalies before they cause service disruptions.
Getting Started with Iron.io
To give Iron.io a try, sign up for a free account today.
As a reward for signing up, we’ll even extend to you a 30-day trial of advanced features so that you can see how moving to the cloud will change the way you think about application development.