[SGVLUG] web server throttling
Miguel Hernandez
migtek at gmail.com
Fri Feb 4 00:39:26 PST 2011
On the front end:
1) Ensure that your "landing page" is lean & mean (as Matti pointed out).
Landing pages are used in big corporate marketing blitzes specifically for
this reason. This weekend will provide a perfect case study & examples as
Super Bowl commercial campaigns are a perfect example of getting
"slashdotted."
2) CSS Sprites all the way. What sprites allow you to do is condense all the
images on your page into one image. Essentially, saving you tons of server
overhead by exponentially reducing the number of HTTP requests. Here's some
resouces:
http://en.wikipedia.org/wiki/Sprite_(computer_graphics)
http://www.websiteoptimization.com/speed/tweak/css-sprites/
On the back end:
1) I'd also suggest Amazon EC2 for your infrastructure (as Matti pointed
out) as you can easily adjust your needs on-the-fly. Our friend, Eric
Hammond, is definitely the guy to talk to about that, though:
http://alestic.com/
2) Depending on what content & how much you're serving, you might want to
look into a good Content Delivery Network (CDN). While Akamai is the
long-time standard, I just found out tonight, at UUASC, that Ilan
Rabinovitch is now working at their competitor, Edgecast. So you might want
to ping him on this possible solution.
http://www.edgecast.com/
http://www.akamai.com/
3) Optimizing MySQL queries for maximum efficiency might also be something
to look into, again, depending on your loadout.
4) Apache: Have you looked into the MPM_prefork module? If I'm understanding
your needs correctly, it sounds like it might be useful:
http://httpd.apache.org/docs/2.0/mod/prefork.html
QA/Testing:
1) Ensure that it's properly tested for potential performance issues, like
memory leaks.
2) Load Testing is going to be your key cog, though, imho (& hopefully first
stop). Ensure that the QA folks have a complete set of test cases that cover
any potential gotcha. Things like testing different load balancing setups
might prove very beneficial. Specifically, though, I'd have load testing
cases for all potential scenarios: more heavy users than interactive users,
a 50/50 split, more interactive users than heavy users, etc. Being a rabid
fan of Test Driven Development (TDD), I can tell you that this is an area
where you usually get the most bang for your buck.
Hope that helps, Claude.
--miguel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.sgvlug.net/pipermail/sgvlug/attachments/20110204/e27acb36/attachment.html
More information about the SGVLUG
mailing list