Gavel: A live auction platform that combines live video shopping with live auctions

Category: Auction, eCommerce

Services: DevOps, Cloud Architecture Design and Review

Live Auction
  • Reduced downtime by almost 95% with a reduction in failure rate.
  • Achieved cost-reduction of 15%.
  • Built a highly scalable and stable system.

About Gavel

Gavel is a live auction platform that brings collectors, buyers, and sellers together. Gavel combines live video shopping with live auctions to add fun and discoverability to online purchasing. Gavel allows you to chat in the Gavel app with like-minded people in the virtual room, ask questions during the show, and bid on your favorite items directly.

Problem Statement

The client’s existing deployment process was manual and error-prone, which was leading to delays and inconsistencies in their deployments. They needed a way to automate their deployment process and ensure that their deployments were consistent and reliable.

Proposed Solution & Architecture

We used AWS CodePipeline to automate the client’s deployment process (for multiple environments) it automatically builds and tests their code, and then deploys it to the provided environment. The pipeline was configured to automatically trigger on code changes in their source code repository, which eliminated the need for manual intervention in the deployment process.

We also configured the pipeline to use AWS CloudFormation to manage the client’s infrastructure. This allowed us to define their infrastructure as code and automate the creation and management of their resources.

Additionally we utilized several tools within the pipeline, which made sure the code’s quality and integrity remains intact , such as Pre commit hooks, Sonarqube and Unit testing

Metrics for Success

With the new CI/CD pipeline in place, the client was able to achieve faster and more reliable deployments. The pipeline eliminated the need for manual intervention in the deployment process, which helped reduce the risk of human error and ensured consistent and reliable deployments.

The client was also able to improve their development process by using the pipeline to automate their testing and deployment processes. This allowed them to focus on developing new features and updates, rather than spending time on manual deployment tasks.

In addition, the client was able to achieve cost savings by using AWS CodePipeline. By automating their deployment process, they were able to reduce the amount of time and resources needed to manage their deployments.

Conclusion

By leveraging AWS CodePipeline, our client was able to achieve faster and more reliable deployments, improve their development process, and achieve cost savings. The new CI/CD pipeline eliminated the need for manual intervention in the deployment process, which helped reduce the risk of human error and ensured consistent and reliable deployments. Overall, the new pipeline helped our client deliver new features and updates to their customers faster and more efficiently.

Pipeline Overview

Gavel Architecture Diagram

AWS Services Used:

  • Amazon Route53:We used Route53 in this project for the DNS management of our project, which connects user requests to internet applications running on AWS.
  • AWS Certificate Manager: We used AWS certificate manager to easily validate our domain for Secure Sockets Layer/Transport Layer Security (SSL/TLS) certificates and configured it with our load balancer(Backend) and CloudFront service (Frontend) for secure & encrypted communication.
  • Amazon Cloudfront: Amazon CloudFront is the service that we use to speed up the distribution of static and dynamic web content, such as. HTML, CSS, Js and image files to the Gavel users.
  • AWS VPC: Amazon Virtual Private Cloud (VPC) is a service that allows you to control the virtual network environment, including the IP address range, subnets, and route tables. You can also use VPC to connect to your on-premises network using VPN or Direct Connect.
  • AWS ECR: Amazon Elastic Container Registry (ECR) is a fully-managed Docker container registry that makes it easy to store, manage, and deploy Docker container images.
  • AWS KMS: AWS Key Management Service (KMS) is a fully-managed service that provides cryptographic key management for your applications. KMS enables you to create and control encryption keys used to encrypt data at rest or in transit in AWS services and your applications.
  • Amazon ECS: The client wanted a scalable and stable solution, so we proposed an ECS(EC2-based) system where we deployed our backend application. With Amazon ECS, the deployment was easy, with zero downtime.
  • ALB: ALB supports advanced request routing features based on parameters like HTTP headers and methods, query string, host, and path-based routing of incoming traffic across multiple targets that we configured with our application. It also enables us to provide the auto-scaling feature.
  • Amazon S3: With features like industry-leading scalability, data availability, security, and performance, we used it to store and retrieve data for frontend and backend applications.
  • Amazon RDS: With the features of RDS, like easy management, scalability, reliability, and a backup mechanism, we configured our MySQL database.
  • Amazon Elasticache for Redis: We use a fully managed caching platform that makes it easy to deploy, manage, and scale our application’s high-performance distributed in-memory data store cluster.
  • AWS CodePipeline: AWS Codepipelineis a fully managed continuous delivery service that helps us automate our release pipelines for fast and reliable applications and infrastructure updates.
  • Amazon SNS: Amazon Simple Notification Service (Amazon SNS) is a managed service that we use for message delivery from different services like CloudWatch Alarm for alerts, push notifications, and Codepipeline deployment notifications at different stages. Apart from sending push notifications, the Amazon SNS service also helps us monitor whether the process is running smoothly or not.
  • AWS CloudTrail: AWS CloudTrail enables auditing, security monitoring, and operational troubleshooting by tracking user activity and API usage. The AWS CloudTrail logs, continuously monitors, and retains account activity related to actions across our AWS infrastructure, Thus giving us control over storage, analysis, and remediation actions.
  • AWS Secrets Manager: We use AWS secrets manager to ensure secure storage and transition of our environment variables like database credentials, API keys, and other sensitive data.
  • Amazon CloudWatch: We use it to monitor and manage our services by configuring alerts for unwanted behavior, storing our application logs and application build stage logs, and providing actionable insights for our applications and infrastructure resources.
  • AWS WAF: Web application firewall that we use to monitor the HTTP(S) requests forwarded to our web application resource Amazon CloudFront distribution just to avoid any malicious activity.

Related Case Studies

ONA dating - case study
Freewire - case study

Speak to our experts to unlock the value of Cloud!

Revisit consent button
How we use your personal information

We do not collect any information about users, except for the information contained in cookies. We store cookies on your device, including mobile device, as per your preferences set on our cookie consent manager. Cookies are used to make the website work as intended and to provide a more personalized web experience. By selecting ‘Required cookies only’, you are requesting Simform not to sell or share your personal information. However, you can choose to reject certain types of cookies, which may impact your experience of the website and the personalized experience we are able to offer. We use cookies to analyze the website traffic and differentiate between bots and real humans. We also disclose information about your use of our site with our social media, advertising and analytics partners. Additional details are available in our Privacy Policy.

Required cookies Always Active

These cookies are necessary for the website to function and cannot be turned off.

Optional cookies

Under the California Consumer Privacy Act, you may choose to opt-out of the optional cookies. These optional cookies include analytics cookies, performance and functionality cookies, and targeting cookies.

Analytics cookies

Analytics cookies help us understand the traffic source and user behavior, for example the pages they visit, how long they stay on a specific page, etc.

Performance cookies

Performance cookies collect information about how our website performs, for example,page responsiveness, loading times, and any technical issues encountered so that we can optimize the speed and performance of our website.

Targeting cookies

Targeting cookies enable us to build a profile of your interests and show you personalized ads. If you opt out, we will share your personal information to any third parties.