Two Hat

Scalable Kubernetes Solution for Real-Time Chat

Bounteous x Accolite's team of AWS experts and Kubernetes Certified Administrators created a cost-effective, cloud-agnostic real-time chat infrastructure that could scale to 47,000 transactions per second.

Bounteous x Accolite partnered with Two Hat to create a scalable, cost-effective, cloud-agnostic real-time chat infrastructure using AWS and Kubernetes. By conducting detailed assessments and leveraging AWS EKS with Terraform, the team ensured the solution could handle over 47,000 transactions per second with less than 30 milliseconds of response time. The implementation included AWS Game Day scenario training and tools like Prometheus, Grafana, and Flux for monitoring and ease of deployment. This approach significantly reduced EC2 costs and cut deployment times from hours to minutes, providing Two Hat with a robust, scalable solution.
 

  • Cloud & DevOps

Business Issue

Two Hat was looking for an AWS partner with Kubernetes-certified administrators on the team to complete a detailed design for a cloud-agnostic Kubernetes implementation, running in AWS. 

The solution Two Hat was looking for needed to support 47,000+ transactions per second and have a response time of fewer than 30 milliseconds to satisfy the real-time chat needs of Two Hat.

Solution

From the project’s outset, Bounteous x Accolite suggested a quick assessment that included several days of workshops with Two Hat to understand their principal architect’s long-term vision for the Kubernetes implementation. Our team then completed an implementation roadmap that addressed network level, service mesh questions, and traffic shaping. With day one and beyond operations in mind, we also recommended implementing AWS Game Day scenario training into the weekly sprint schedule.

A solution proposed by Bounteous x Accolite would work with AWS EKS and Terraform for the infrastructure code solution to be implemented. Focusing on Terraform leveraged Hashicorp’s templates of AWS providers to ensure scalability and configurations that made sense for Two Hat at the time.

Using AWS EKS made it easier for the client to maintain a fleet of spot and reserved node groups. This allowed the Two Hat team of developers to switch focus to learning how to effectively monitor the solution using Prometheus, and Grafana. Focusing on using GitOps by implementing a tool like Flux allowed the team to help increase the ease of deploying to multiple clusters as well as giving audit ability to the whole process.

Outcomes 

Using Kubernetes significantly reduced Two Hat’s EC2 costs and deployment-to-market times went from several hours to minutes. The scalability of horizontal pod auto scalers allows the application to scale up when demand is high and scale down when fewer clients are using the service.