Surviving Slashdotting with a Small Server
S.BartFarst writes "Our little departmental server has been slashdotted twice in the last year and survived! Implementation of a two-headed redundant hardware scheme using linux virtual server and backup and failover capabilities enhanced by the linux high-availability tools has produced a nifty low-cost solution. Gotta love those little white boxes!
(also having a university-supplied BIG PIPE doesn't hurt). More interesting is the documentation of the apparent exponentially decaying attention span of slashdotters. Anybody else observed similar phenomena?"
There is a total of 80K of information on the entire front page! Dig a little deeper guys and perhaps we can find a few gigantic image downloads. If you find any do share =)
From excellent karma to terible karma with a single +5 funny post...
While your setup may make you real safe from machine outages, the effects of a slashdotting are to flood your resources rather than break them. So your configuration gives you at best the performance of two machines instead of one - which you could also have achieved by just ramping up the CPU or memory.
[x] auto-moderate all posts by this user as insightful
Not quite - look at the plot it is monthly plot - there are 31 bars - one for each day. If we had daily plot - the time zone effect would be visible...
However I don't know how to explain this phenomenon (Slashdot is good for making research and writing some thesis).
BTW, using static pages also helps too. What is more, the "how to not survive" includes "generate content dynamically every time".
Are you serious? Because... this is what I get:
...blah,blah,blah...
/. effect time, too. I'm really proud of them, and their little beige boxes. =)
Pinging geology.heroy.smu.edu [129.119.223.84] with 32 bytes of data:
Reply from 129.119.223.84: bytes=32 time=58ms TTL=232
Reply from 129.119.223.84: bytes=32 time=61ms TTL=232
Reply from 129.119.223.84: bytes=32 time=60ms TTL=232
Reply from 129.119.223.84: bytes=32 time=56ms TTL=232
Reply from 129.119.223.84: bytes=32 time=58ms TTL=232
Reply from 129.119.223.84: bytes=32 time=74ms TTL=232
Reply from 129.119.223.84: bytes=32 time=67ms TTL=232
Ping statistics for 129.119.223.84:
Packets: Sent = 16, Received = 16, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 56ms, Maximum = 74ms, Average = 60ms
I mean, that's pretty damn smooth for a 30 minute old story. That's probably peak
nahhh... you can survuve a slashdotting much easier...
simply use thttpd.
it has throttling built in so that the slashdotting wont take down the server. It simply stops serving images at anything but a really slow rate and eliminates multiple requests from same hosts... (A bitch for NAT'ed companies)
There are httpd servers out there that are much better than apache for handling insane loads.
Do not look at laser with remaining good eye.
Yeah, I noticed that too.
Brackets contain world's first nanosig, highly magnified:[.]
Here are some mpeg files from their server: 3.8mb , 3.6mb and 320kb
Should have squid cache running inside their network, so only one request for a given file should be necessary.
Static content is right.
In 1998 I was working at a startup and we served Olympics news to Excite.com, which was one of the very largest sites on the web back then. Excite linked to pages on our server which were at some URL like olympics.excite.com that pointed to us.
What they didn't know was that we were serving all this off of ONE Sun Ultra 1 workstation on my desk (which was all we could afford at the time). I had it set up with Squid so everything was coming out of memory.
It worked fine, even at peak times everything popped up about as fast as any other page on Excite.
Moral: if you need speed and the page doesn't really have to be dynamic make it static or cache it.
http://www.veritest.com/clients/reports/microsoft/ ms_competitive_webbench_performance.pdf
Vignette is a rather trivial hack which was developed at C|Net and licensed to Vignette. It basically just writes out static pages, nothing fancy.
As soon as Vignette licensed it, they were able to claim C|Net as a "Big Customer", which of course was a fib. This let them sell loads of software to organizations that didn't know any better.
Moral of the story? Static pages are a great idea. If you can't do static easily, put a cache in front of your dynamic pages and decide how dynamic you really need them (Is 15 minutes delayed OK for you or is each page totally dynamic?). You don't need to spend $250K for Vignette to get this to work. In fact, you can do it with free software quite easily.
Web caching and optimization is a big topic but in general the more clever you can be the less money you have to spend on big iron.
with a k7-1300, Apache without php or any dynamic stuff, static pages, and a little 256/128k DSL connection... the linked file from Slashdot frontpage was 60kb long in my server... and it resisted it surprisingly well
So if your site is slashdotted, churn out a static version of the pages which are likely to be pulled most and hand them over to a TUX server. Sit back and enjoy the traffic!