About Customer
The customer is a content and consumer company, leading in the digital, television, radio, and commerce space across Malaysia. It serves around 6 million homes, which are diversified through various platforms, such as smartphones, tablets, Pay-Tv, and so on.
The Challenge
Before moving to AWS cloud, the customer was using a third-party SaaS solution. Its team was looking for an alternative solution to support dynamic business requirements and to do so, they wanted to go live in a short span of approximately 2-3 months. Hence, they eyed for a platform that could meet the capabilities of their existing product and enable adding new features.
Being on a digital transformation journey, the customer was looking for a partner who can bring a domain-specific capability and help them build a cloud-native solution. As they were willing to have a web application that could deliver better performance and optimization, Blazeclan’s team suggested them to move from Spring Boot and AngularJS to Node.JS and Serverless APIs.
The Solution
Blazeclan proposed implementing its product, CloudStream, to meet aforesaid challenges faced by the customer. A multi-tenant video asset management and publishing product, CloudStream offers solutions like events’ live streaming, transcoding video content, and archiving & delivering high-quality video content. Some of the pivotal features that make CloudStream a holistic solution for broadcasters, operators, and publishers are ease of ingestion, video transcoding to multiple formats, content distribution, content management and its syndication, secured video streaming, etc. It also allows managing video content in a secured, low cost way on AWS platform, at the same time publish and monetize the content to multiple new-age video distribution channels in a streamlined & automated way. Blazeclan customized CloudStream to align with the customer’s needs.
1.Video Asset Management: This module was customized to enable video acquisition and ingestion via CMS for the customer’s content managers and FTP push/pull mechanism for external agencies. REST APIs were developed for publishing and distributing video content to syndicate partners and multiple web properties.
2.Scalable Microservices Architecture: Application design was supposed to serve the content from Web CMS and REST APIs (for partners and web properties). CloudStream’s microservices architecture enabled quick turnaround time to customize AWS Architecture and deployment to independently serve the respective need from two different and independently scalable fleet of EC2 servers. Further changes to the architecture have been done to realize the benefits of serverless architecture.
3.Video Migrations and Transcoding: Customizations/configurations were done to enable transcoding output in file formats like MP4, HLS-M3U8, etc. as per specific requirements of the customer. Custom migration scripts were used to migrate over 12 TB of video content including, high-resolution videos, thumbnails and transcoded video content from the incumbent SaaS solution. Over a period of 2 years, data has grown to 50TB which is 400% increase in data and yet, the system is highly responsive.
4.Agile Methodology and DevOps: Blazeclan followed the scrum methodology, which helped the product owner to get clear visibility of tasks and refine backlogs. The deployment process is designed to push out features on production at a faster pace using automated CI/CD pipelines with Jenkins tool. The progress was tracked and reported by using the project management tool, JIRA.
Blazeclan team also integrated SonarQube to check, track, and visualize the source code metrics, which helped in enhancing code standards and reducing quality gate from 30.89% to 89% monthly on an average. Moreover, the DevOps Transformation (DOT) framework has been implemented, which improved the user experience. Integration of the automation suite further helped in identifying regression issues that could impact the module. It helped the customer to get a clear view of the UI and backend. The result of this suite is directly sent on Slack for the product owner’s review.
Benefits Achieved by the Customer
1.Highly Scalable: The application has been designed to auto-scale and serves millions of concurrent API requests with a response time of few milliseconds during peak times, which typically happens over a weekend.
2.Continuous Deployment: By practicing the scrum methodology, the product owner has a clear visibility of tasks and there is continuous deployment with the help of CI/CD pipeline.
3.Fault Tolerant: By replicating the EC2 instance across multiple availability zones, the chances of total outage or failure have been significantly reduced, thereby resulting in a fault tolerant architecture.
4.Security: A vulnerability assessment and penetration test (VAPT) of the application was conducted, which identified a comparatively secured environment for the customer.
Tech Stack
AngularJS | Spring Boot | Spring Data |
Java Version 8 | Node.js | Auto-Scale |
MySQL Multi-AZ | Zone Deployment | Elastic Transcoder |
Amazon Elasticsearch | Amazon EC2 | Amazon RDS |
Amazon SQS | Amazon ELB | Amazon ELB |
Amazon SNS | Amazon S3 | Amazon CloudFront |
Amazon API Gateway | Amazon SES | AWS Lambda |
Amazon CloudWatch | Amazon VPC | Route 53 |
AWS WAF | AWS Platform | Javascript |