Expecting 100k hits/day burst

I'm expecting 100k hits a day for a week (it'll tail off after that week) and wondered which linode/linode combination would be most appropriate to use?

I'll be writing in PHP and the site itself will have relatively few functions but will have MySQL interactions.

Let me know if I can provide any further info :)

5 Replies

100k hits a day is only an average of 1.2 hits/second (obviously the traffic won't be spread out evenly through the whole 24 hours, but it's still a helpful stat).

Assuming your content is reasonably cacheable, your app is reasonably well written, and your server stack is well configured, there's no reason a single 512 couldn't handle that.

If you data isn't cacheable, the app is horribly inefficient, and your server stack is badly configured, you'll be able to bring a couple of 4096's to their knees.

There are a lot of variables involved…

Aye,

I don't have long to code it but it'll be efficient PHP but on a pretty much standard LAMP stack…

I think 4 req/sec is likely

Thanks for the feedback :)

A little bit of caching will get you a long way. Memcached is stupidly easy to implement, and will drop your database load significantly.

You might want to consider using something like nginx to serve your static resources (images, css, javascript, etc), and then reverse proxy to Apache for the PHP stuff (or forget about Apache entirely and use php-fpm to run the PHP directly).

Remember to minify and gzip. Consider offloading some or all static resources entirely to a CDN like CloudFront.

It really does depend on what you're doing. I've handled a third of a million pageviews a day on a server far slower than my linode, but then again, a bit of database schema tweaking reduced my load on that box by several factors. It really depends on what you're doing.

If you're just serving static content, a single 512 running lighttpd/nginx/cherokee/etc could handle millions of pageviews per days. As soon as MySQL and PHP get involved, it's anybody's guess.

FWIW, we're handling 20-30 requests a second using Apache/Perl/MySQL.

These are dynamic requests, delivering targetted ads to suit the host/viewer.

This is on a 2048 Linode and we have a load average of 0.08 as I type - it's not that far from idling. It's all about code optimisation.

I've been very impressed with Linode's machine performance (not to mention all the other things they're great at)

Reply

Please enter an answer
Tips:

You can mention users to notify them: @username

You can use Markdown to format your question. For more examples see the Markdown Cheatsheet.

> I’m a blockquote.

I’m a blockquote.

[I'm a link] (https://www.google.com)

I'm a link

**I am bold** I am bold

*I am italicized* I am italicized

Community Code of Conduct