Skip to main content

Case Studies

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

Production ran on MySQL 5.7 and WordPress 4.9; AWS moved MySQL 5.7 into paid Extended Support, adding $2,100/month.

The platform was too big for dump-and-restore: 3 RDS databases, 85 GB of WordPress files, a 248-million-row order table and several 51-million-row tables, with live API traffic that could not take a long outage.

Our approach

  1. A separate AWS account with a new environment (PHP 8.2 on ECS Fargate, HTTPS via Cloudflare).
  2. MySQL 5.7 to 8.0 and WordPress 4.9 to current, fixing breaking queries (GROUP BY, charset) and validating every API endpoint.
  3. A Python sync engine (51 tests) with a live dashboard, using a lightweight shadow changelog to capture changes in real time without production downtime.
  4. A blue-green cutover plan via a Cloudflare DNS switch with instant rollback.
  5. Along the way, fixed a live Redis outage caused by a VPC peering route conflict, built a production monitoring tool and scheduled index builds in low-traffic windows.

The result

  • New environment kept in sync with production across all four high-volume tables with effectively zero drift.
  • Recovered about 30,000 rows missing from the original snapshot of the 248M-row table.
  • Final switchover planned at under 30 minutes of downtime.
  • Removes the $2,100/month Extended Support charge once cut over.