Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm building a simple easy to use social networking website and currently have it set up on a shared host. I'm not very happy with the host and would like to consider a decent webhost - looking for a dedicated host.

Are there any hosts out there who would also have provisions to help in optimizing my social networking site on the code and database level as well?

All suggestions are welcome...

share|improve this question

closed as off topic by Sam Jan 18 '12 at 21:13

Questions on Server Fault are expected to relate to server, networking, or related infrastructure administration within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here.If this question can be reworded to fit the rules in the help center, please edit the question.

up vote 4 down vote accepted

Running a network and optimising your code are very different tasks; better to find two separate companies/consultants each of whom are experts in their field than to try and find one company that's good at both of them -- it'll always be a compromise.

The tricky bit is that there's a third component to the mix -- systems administration. You either need to have your hosting company or programmers provide this aspect, do it yourself, or bring in a third outsourced company/consultant to do this work.

Seeing as I work for a hosting company that does a lot of outsourced sysadmin work, I think the hosting company can do the sysadmin work, but I also know that there aren't a lot of companies that really cover all the work implied by the term "systems administration". The problem is that a lot of companies have a "fully managed hosting" product, but what is actually included varies a massive amount.

Ask a lot of questions about what exactly is covered by any "server management" agreement from your hosting company (or, for that matter, any other systems administration contract) -- and don't be afraid to go back and forth to compare exactly what each company will do for you and how it will be billed. Things you definitely want to make sure are covered include:

  • Security patching
  • Monitoring
  • Reactive handling of alerts ("webserver down" -> find the fault and start it again, do a root cause analysis, etc)
  • Proactive analysis of system performance to determine server capacity and when you'll be needing upgrades
  • Network (re)configuration
  • System package installation and configuration (webservers, databases, etc etc)
  • Assistance with scalability (advice on performance analysis, load balancing, etc as your site grows)
  • Liasing with your developers directly to resolve any problems with performance or whatever else you don't want to deal with yourself
  • Handling technology-specific issues in the production environment (while in theory your developers should be capable of handling this part of things, in my experience most developers don't like doing this, and avoid it wherever possible -- and a happy developer is a productive developer)

You're looking at a fairly similar process to find your developer -- determine what you need and then talk to several developers familiar with the technologies you're using to find out what they can do for you. Decide what you want first, too -- do you still want to stay as the primary developer, or are you looking to handover day-to-day maintenance of the codebase to someone else? If the former, that's not a common requirement, and you'll have to work harder to find the right person or company to work with. Most developers want to develop, and don't want to tweak -- and again, unhappy developer == unproductive developer. If you pick the wrong developer to help, you'll find they'll be spending thousands of your dollars rewriting half your codebase when all you wanted was a bit of analysis into why a particular page was rendering slow. (That's not to say that it might need rewriting, but it's better if you know that in advance of it happening).

Talk to the developers about the sysadmin side of things, too -- while I don't know a lot of developers that are also capable sysadmins, there are a few out there, and if you come across them they can be an awesome combination. Most of the best developers I've met, though, know their strengths and play to them, and have got sysadmins lined up to do that work for them. So, tap their knowledge -- find out if the developers you talk to have a preferred hosting company and/or sysadmin (team?) to work with, then go and talk to those people and ask all the sysadmin questions all over again.

Also, steel yourself for shelling out a reasonable chunk of cash. Good people don't come cheap, but bad people are even more expensive in the long run.

share|improve this answer
+1. Maybe wanders a bit away from the question, but very valuable wisdom in this answer. – Jesper Mortensen Nov 8 '09 at 8:52
Yeah, sorry about the length, but I thought it important to explain why the question isn't a particularly easy one to answer. – womble Nov 8 '09 at 9:03

If you're looking for a dedicated hosting service, I can recommend The Planet. They are very reasonably priced, and I ran a server with them for several years without any noticeable downtime or issues.

As for your code itself, web hosts don't generally care to help you with the nuts and bolts of your code. That's your job. Their job is to keep the network running. If your code is performing poorly on a shared host, they're going to shut down your code rather than to help you optimize it. If you need help optimizing your code, your best bet is to hire a programmer or two.

share|improve this answer

orcsweb is one of the best I've seen

share|improve this answer

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