Google Cloud architecture and Alibaba, 4K video in real time
This challenging project led us to implement a Google and Alibaba multicloud architecture to distribute live and real-time FullHD video supporting over 500,000 concurrent users with loading times of less than 5 seconds
1. Project Objectives
The project's objectives required by the client were:
- Distribute FullHD, live and real-time video worldwide.
- Supporting more than 500,000 concurrent users.
- Achieving page load times of less than 5 seconds.
To support the load, deployment time and bandwidth requirements, we designed and implemented a dedicated auto-scaling Google and Alibaba multicloud architecture. Several distribution points were created in multiple global regions, accelerated by CDN.
2. Realization of Google and Alibaba multi-cloud architecture
To realize the multicloud architecture, we followed these steps:
- Creation of the Debian Linux backend with ISPConfig, NginX, PHP and MySQL
- Implementation of a centralized logserver
- Configuration of frontend images
- Stress testing on single instance
- Management synchronization of content and virtual hosts
- Creation of instance groups and configuration of balancers load and autoscaling
- Configuring DNS to route traffic based on geographic proximity
- Replication of frontends to Alibaba Cloud and managing latency in synchronization due to the Great Firewall of China
- Configuring Google CDNs, Akamai, and Level3
- Creating instance pools for automated and scalable stress testing
- Load data analysis and architecture optimization
3. Tools and cloud providers used
We chose to use a Google and Alibaba multi-cloud architecture to benefit from the capabilities offered by both platforms, available regions, and advanced networking. Google Cloud Platform was used as the primary infrastructure, while Alibaba Cloud was mainly used in China.
4. Software employed in the architecture
We selected the nginx webserver for its speed and lightness, the ISPConfig control panel for management of virtual hosts by the client's development department, and rsyslog for the central log server. Stress tests, were performed in parallel on cloud instances, via ad-hoc scripts from Apache Bench and Siege.
5. Testing and results in production
From the tests, a standard dual-core Google Cloud instance was found to be able to handle over 11,000 requests per second. In production, the architecture exceeded 500,000 requests per second
China page load times were reduced by 92 percent, from 38.6 seconds to 3.1 seconds.
Just ask us for 30' of free Google Cloud Platform consulting, we will analyze together how to improve your architecture and contain costs