Take the 2-minute tour ×
Webmasters Stack Exchange is a question and answer site for pro webmasters. It's 100% free, no registration required.

I do my own hosting for a few clients on my own VPS server (Lindode). Since my clients so far have been extremely low traffic, I have not had to really dig into some of the considerations that I would need for a higher traffic site. Now I am bidding on a client whose site will be potentially higher (not Facebook or twitter, but higher than Joe's ice cream shop). Is there a list of things I need to think about that I may be missing?

I am going to assume, at least at first, that I will be able to handle them on my shared Linode, but I could move to a dedicated Linode if need be. I am not thinking so far of multiple servers, but short of that there are still considerations. For example, mod_perl instead of straight CGI, better backups, etc. What else?

In case it matters, the stack will be debian-linux / apache / Perl / mysql / Template Toolkit.

share|improve this question
1  
FastCGI seems to be favoured over mod_perl these days. –  Quentin Dec 25 '10 at 19:14
add comment

1 Answer 1

Do you know roughly how much traffic the site will have? You should try to find out, and then do a load test on your application and server to see if it can handle it. There are various free tools for this.

You will probably also want to take a look at MySQL's Slow Query Log to see which of your database queries can be optimized.

Additionally, I'd do some tests with your application to see if FastCGI will perform better than mod_perl. Memcached and APC should also be considered. And make sure your MySQL query cache is set to the optimal size for your server.

There are also other high performance tweaks you can make to reduce the load on your server. For example, sharding or partitioning (don't do this unless you really need to) or setting a lighttp or nginx server for static content.

Aside from that, you may want to consider switching to cloud hosting or a VPS provider with auto-scaling.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.