Case Study · AWS Modernisation
Webanite: modernising a 248-million-row WordPress platform on AWS
Client
Webanite, a WordPress-and-API web platform with very large order data.
Service
DevOps and cloud modernisation on AWS.
The challenge
Webanite's production stack ran on MySQL 5.7 and WordPress 4.9. AWS moved MySQL 5.7 into paid Extended Support, adding an extra $2,100/month (Year 3 pricing). The data was too big for a simple dump-and-restore:
- 3 RDS databases and 85 GB of WordPress files;
- a 248 million-row order_statement table and several 51 million-row tables;
- live API traffic that couldn't take a long outage.
Our approach
- Separate AWS account with a complete new environment: PHP 8.2 on ECS Fargate, HTTPS via Cloudflare.
- Upgrades: MySQL 5.7 → 8.0, WordPress 4.9 → current, with all breaking queries fixed (GROUP BY, charset) and every API endpoint validated.
- Python sync engine (51 tests) with a live dashboard. A lightweight shadow changelog replaced the timestamp-index approach, so changes are captured in real time without production downtime.
- Blue-green cutover plan: the new environment becomes production with a Cloudflare DNS flip, with instant rollback.
- Along the way: fixed a live Redis outage caused by a VPC peering route conflict, built a production monitoring TUI and scheduled index builds in Sunday low-traffic windows.
The result
- New environment continuously in sync with production across all four high-volume tables with “effectively zero drift” (12 Jun 2026).
- Recovered a gap of ~30,000 rows missing from the original snapshot of the 248M-row table.
- Planned final switchover: under 30 minutes of downtime.
- Removes exposure to the $2,100/month MySQL 5.7 Extended Support charge once cut over.
Why it matters
Scalexa brings 25+ years of engineering experience across 500+ projects, including work for Fortune 500 and enterprise companies.