![]() |
![]() |
Home / Success Stories / Success Stories / | ![]() |
|
![]() |
||||
![]() |
![]() |
|||
![]() |
![]() |
|||
![]() |
||||
![]() |
![]() |
|||
![]() |
mod_perl deployment at EToys | ![]() |
||
![]() |
||||
![]() |
![]() |
![]() |
||
![]() |
||||
![]() |
||||
![]() |
![]() |
![]() |
![]() |
||
![]() |
||
![]() |
![]() |
![]() |
![]() |
||
![]() |
||
![]() |
![]() |
![]() |
![]() |
||
![]() |
||
![]() |
![]() |
![]() |
![]() |
||
![]() |
||
![]() |
![]() |
![]() |
![]() |
||
![]() |
||
![]() |
![]() |
![]() |
![]() |
||
![]() |
||
![]() |
||
![]() |
||
![]() |
||
![]() |
||
![]() |
||
|
|
||
![]() |
||
Traffic: 2.5 million+ page views/hour during Christmas 2000
In 1999, I joined the development team at the rapidly growing on-line
toy retailer eToys.com. At the time, the site was running on a pretty
standard platform of Perl CGI and a MySQL database. Traffic was
increasing, and the servers were already straining under the load.
Our major task was to figure out how to get this system to scale large
enough to handle the expected Christmas traffic. The toy business is
all about seasonality, and the difference between the peak selling
season and the rest of the year is enormous. The site had barely
survived the previous Christmas, and the MySQL database didn't look
like it could scale much further.
There was no time for a significant re-write of the exisiting code, so
we looked to mod_perl's CGI acceleration capabilities to get us
through. Using the Apache::PerlRun module and the persistent database
connections provided by Apache::DBI, we were able to do a basic port
to mod_perl and Oracle in time for Christmas, and combined with some
new hardware we were ready to face the Christmas rush.
The peak traffic lasted for eight weeks, most of which were spent
frantically fixing things or nervously waiting for something else to
break. Nevertheless, we made it through. During that time we collected
the following statistics:
* 60 - 70,000 sessions/hour
* 800,000 page views/hour
* 7,000 orders/hour
According to Media Metrix, we were the third most heavily trafficked
e-commerce site, right behind eBay and Amazon.
It was clear that we would need to do a re-design for 2000. We had
reached the limits of the current system and needed to tackle some of
the harder problems that we had been holding off on. Using mod_perl
and a variety of other open source tools, we rebuilt the site to use a
modular object-oriented design, improving flexibility as well as
performance (see the Tutorials section for more information). Our
capacity planning for Christmas 2000 was for three times the traffic
of the previous peak. That's what we tested to, and that's about what
we got:
* 200,000+ sessions/hour
* 2.5 million+ page views/hour
* 20,000+ orders/hour
See the Tutorials section for more information on how this feat was
accompilshed!
|