The win here was about individual page load time. And page load time is just as important, if not more so, for something new trying to vigorously grow as it is for the big sites.
(Disclaimer: HHVM alum.)
The win here was about individual page load time. And page load time is just as important, if not more so, for something new trying to vigorously grow as it is for the big sites.
(Disclaimer: HHVM alum.)
His machine could easily handle the traffic thrown at it, but the page load time was slow. 2 seconds at best, with all machines involved being almost 100% idle. With various common tweaks such as caching, we got it down to about 800ms. We eventually replaced it with our own solution and got it to 50ms.
Scale never entered the picture because from our testing, we had the machinery in place to handle enough traffic to be wildly profitable. The user experience at 2 second page load times was vastly different from the user experience at 50ms though.
MySQL over Postgres because that's what we had experience with at the time. Redis as both a cache and ephemeral store.
So, more request can be served with a smaller number of servers.
The un-shortened URL is https://ganglia.wikimedia.org/latest/graph.php?r=year&z=xlar...
(I should've put a disclaimer there: I am one of the WMF engineers involved in the project).