Case Study: How MightyBell Met SLAs and Optimized AWSConfiguration

Posted by on July 12, 2016 4:41pm

mightyBellLogo.png MightyBell is a social network platform for communities, creators, and Fortune 500 companies seeking a better way to connect with their unique audience: groups like employees, product users, fans, community members, etc.

MightyBell offers specialized social networks for businesses and community groups. Their enterprise contracts often include SLAs (Service Level Agreements) which encompass rigorous performance requirements. Thus, MightyBell is committed to ensure that their platform is continuously able to accommodate all their customers’ traffic and uphold their SLA terms.

Challenge

MightyBell’s development team is based on Agile development. They update their software on a weekly (or sometimes daily) basis to provide regular enhancements to their customers. MightyBell’s SaaS solution is deployed in a AWS cloud environment, with a rather complex architecture capable of scaling up and down based on their needs. The growing social network offers a wide range of actions that are accessed by tens of thousands of users every day. They also have traffic peaks of hundreds of thousands users per day, and need to be able to respond with no performance degradation.

MightyBell was looking for a solution that could not only reproduce the level of traffic expected by their customers but also the variety of complex scenarios their customers might represent. MightyBell needed also to size properly its architecture on AWS, consisting of services like EC2, ELB, RDS, and AWS rate-scaling.

Solution

When MightyBell started using Nouvola DiveCloud, they had the following requirements:

  • Generate different levels of traffic, ranging from 100 to 3,000 users per minute
  • Represent different types of behaviors in the same test, in different percentages:
Percentage User Behavior
70% Browse posts, collections and search
10% Browse user profiles
15% Create cheers, comments and chats
5% Create and edit posts

 

  • Generate different traffic patterns, some in steady state for the duration of the test, and others with traffic growing linearly
  • Collect the following result information: average requests per second, minimum and maximum response time, distribution of the response times, average response time, request error rates.

They also needed help to set up a proper test environment and execute some of the initial tests.

 

Results

 

By using Nouvola DiveCloud for regular performance testing, MightyBell could predict performance issues on a system under different loads and take action in their code and infrastructure to prevent them. They also used Nouvola for capacity planning for AWS and were able to identify the optimal configuration of AWS services and instance sizes to support their customers’ load.

After the initial setup, MightyBell has continued to use Nouvola DiveCloud on a regular basis to make sure that they can still meet their performance requirements in the SLA. They make weekly deployments and need to guarantee no performance degradation has happened.

MightyBell is growing its customer base and is planning to use Nouvola for each new customer deployment, integrated with AWS CodePipeline to avoid any performance regression.

This is what MightyBell has to say about Nouvola DiveCloud:

“Using Nouvola DiveCloud the Mightybell engineering team could quickly iterate to find the best system configuration to support its most demanding customer SLA with ease. I could actually see the system scaling as the load increased. Awesome!”

There is no performance testing tool out there that provides the level of results that Nouvola provides“.

Matteo Melani, CTO, Mightybell

 

Sign Up For Free