Ask Slashdot: What Should a Non-Profit Look For In a Web Host?
An anonymous reader writes "We are a large (multi-national) non-profit and currently deal with 503s on a near daily basis. We've worked on this for over a year and the host hasn't been able to figure out how to fix it. We're paying for a managed host and need to evaluate other options. My boss has tasked me with evaluating a new one. I'm the most geeky of the group, so I know the terms, but don't have a sense of what's actually needed to suit our needs. We sometimes have upwards of 1,000 people browsing the site at the same time, so my sense is that we shouldn't need massive amounts of power or bandwidth... but, somehow that's not working on our current host. Can anyone help me get a sense of what types of hosting will best suit the needs of a 'large' non-profit? We're not Facebook, but we're not a mom-and-pop shop. Any help or tips would be fantastic, particularly if you've also selected a new hosting provider in the past year or so. I don't necessarily need actual names (though those would be nice, too) but at least some tips on what makes a huge difference when suddenly a whole bunch of people around the world read an email and want to help out."
AWS
Sounds like maybe you want a managed VPS with cloud-like flexibility. Something like VPS.net or HostGator, maybe? Or you might want to get a part-time IT guy on board so you've got someone who can handle this stuff without the guesswork or asking the unwashed hordes of /.
The same things every other small/medium company looksfor in web hosting?
Just get 1/4 rack space, two Dell R81x boxes fully loaded (48 cores, 512GB RAM, 6 x 15K 500GB SAS drives in RAID 1 + HS) and that should solve your problems. boxes run around $5K each.
send me an email to my anon email if you like (msharp42@fastmail.fm)
I get traffic like that and manage it on a daily basis.
What is the problem with your current host? I think you dropped some text.
What Should a Non-Profit Look For In a Web Host?
Same thing a for profit one would look for. Uptime, SLA's, bandwidth, return to service, etc... and what does it cost. If you are having trouble with this hire someone. This is probably a 1-2 month consulting gig (if that). Sometimes the best thing to say is 'I do not know how to do that lets hire someone who does'.
If you're serving up static pages you shouldn't need much in the way or resources. I've been hosting my heavily dynamic site (see sig) on Pair.com and have found them to be quite competent.
In a band? Use WheresTheGig for free.
They will help you get to where you want to be. Lots of smart people over there.
A large, multi-national non-profit org. that hosts content that is looked at by 1000 people at any one time, and that's all the info basically. Nothing about your current usage pattern, nothing about your site, is it dynamic, static, what is it running, what does it do?
I suggest you find somebody to look and evaluate your needs, given that you call yourself 'the most geeky of the group', I think I can figure out that you are running almost no dynamic content (dynamic in the sense that there is an application behind your site), so it must be mostly static stuff that somebody updates by hand (probably), or am I wrong? Can't really be sure from the summary. So giving an advice from your summary is basically impossible, you should get somebody to evaluate what you have, what you actually need, then, when you have that information you can ask more questions on /. and people can actually give you a meaningful advice maybe then.
You can't handle the truth.
Unless people know what your application is, it will be difficult recommend a hosting provider.
Is the issue with the provider, or your staff?
Who is responsible for the application? You or the provider?
Most providers simply provide the infrastructure. Application support is on the customer.
If you guys do not know what you are doing, taking your mess somewhere else might not fix it.
With that kind of traffic you could be making considerable savings and have a much faster site if you used a CDN; They'd cache the static parts of your site - the assets, and hopefully a large number of your static pages. They're normally cheaper than the bandwidth your provider provides, and a good one will be faster still.
I recommend the newcomer fastly for this because they offer a few things that many other places don't (real time stats and the ability to do edge includes so you can cache _almost_ static stuff.) But really any CDN will be better than your normal webhost.
If your hosts don't know enough about webserver tuning, then you need to look into tuning the content --
I'm not going to say that you haven't outgrown your current host ... but odds are your website could be trimmed down unless it was made 10 years ago.
If you have access to configure the webserver, you can squeeze even more performance out -- cache control headers can do wonders, as can properly tuning the database if you're serving dynamic content.
Build it, and they will come^Hplain.
Sounds like a configuration issue and lack of resources (memory most likely).
I'd spend 4k on a redundant dell with 12gb of ram, 1k on a Cisco 1125(?) Running Linux. Configured and setup correctly it may require maintenance every year or two and handle the traffic just fine.
We sometimes have upwards of 1,000 people browsing the site at the same time, so my sense is that we shouldn't need massive amounts of power or bandwidth... but, somehow that's not working on our current host.
Your current host can't handle that?!?
whatever.
Check your ISP. If you have a decent business account with them, they probably have hosting as part of your plan. Why pay more when you don't have to.
Or just google it
Have a look here
Those same companies keep coming up.
Yahoo! has hosting services.
And what's your budget? You can throw some money at Linode to get a managed VPS, and that'll scale up or down very easily, so long as your needs don't exceed what you can do with a single node (it's not hard to throw more RAM and CPU at a problem, but if you need to scale to multiple boxes, that's more complicated). If you have more time than money, you can do the same thing yourself and just spend a few hours a month keeping things up to date and maintained. $140-180 per month is probably going to cover you, or $40-80 if you DIY.
If you really want to have this as close to zero-effort as possible, throw some money at somebody like rackspace who does cloud hosting, where your site is sitting on top of their cloud so they're already handling scaling stuff for you, and you never have to worry even a little about the infrastructure. They start at $150/mth and go up from there, so they'd probably end up more expensive than a managed VPS, but at that point they're doing pretty much everything for you, including scaling to multiple servers transparently.
Asking for "a hosting provider" is not enough context: what are the technical details - languages / OS / DB / expected load, etc?
Have you done any troubleshooting on why are you getting 503s - are there not enough app server processes / threads? Is your DB blocking things?
1000 simultaneous users isn't much, so unless you're on a thoroughly undersized VPS (or worse, an oversubscribed *shared* host) you should first look at WHY things aren't working. Changing hosting providers won't help if your app is doing stoopid things (loading the entire DB in memory on every request, etc) but it will take a lot of cash and time.
I know I'm overgeneralizing, but in large part commodity utility providers, like web hosting companies, don't really care about specific customer problems. They will work diligently to make sure that if they sell a widget, that widget is working the way they say it will, but if you're wondering what your capacity planning outlook should be, where the system inefficiencies are, how you could tune the site to make it perform better - hire a local consultant who will learn about your company, your customers, and your systems. The web hosting companies do care about their problems, just not yours.
Find a consult who's not reselling anything and then if it turns out that the current web hosting company is, or ever becomes, the problem, then he will tell you straight and help you find a better solution. I do this in Northern New England, but you'll find somebody just about everywhere (go by word of mouth from your peers).
My God, it's Full of Source!
OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
A PHP module with automatically writes grant proposals.
Work in the hosting industry and every time I see the worlds we really should not need much the first thing I always wonder is what is the site running. 1k users is not much but if it's some slow CMS or worse yet the we got a CS major intern to do it one off. The big thing that people do not get is a managed server is managed though the stock OS level your web sites code generally not included and often the web dev guys do not want to deal with servers bit so you have a gap. If your already on a decent box this could be as simple as a bit of tuning.
If your not paying significant amounts for just the maintenance do not expect them to do it as part of that maintenance. Far to often people think a couple hundred bucks extra of system maintenance buys them the equivalent of a full time senior sys admin. I'll give you a hit that's less than an hour of consulting rates for that sort of work.
No sir I dont like it.
If the vendor isn't helping or finding a root cause, then it may be better for you to hire an external engineer to look into the problem for you. As mentioned elsewhere there are no details on the application... But as per the HTTP standard 503 is a generic "server unavailable". This could be caused by load or a transient application failure or simply a real repeatable bug that is triggered periodically.
My recommendation would be to contract a developer (how is left as a problem for the OP), and have them debug the problem on behalf of your organization, make the SOW a root cause analysis for the issue.
Assuming you are using a web application of some description, you will most likely run into a similar problem when you move to a new provider. A rule of thumb that I use is that when making drastic changes to a deployment/infrastructure/application/software/etc. You will be invariably swapping a set of painful intractible problems that you know and understand and work around, for a set of new intractible problems that will take time for you to know and understand and work around.
The art is in known whether the unknown intractable problem is going to be better or worse than the previous ones. I am sure most of the SW people on slashdot have seen far too many "Our new system is going to solve all our problems". Only to get given something that is different, but just as bad - but cost a hell of a lot more to put together than the workarounds for the old system...
Have you considered that it might be your application crashing or freezing up that is causing the 503 errors? You'd better rule out that possibility before you look elsewhere, because if your company's lousy code is to blame then you'll likely have the same problems wherever you go.
Breakfast served all day!
I have our marketing department handle all of our web stuff and they outsource it. I don't know the exact details of the inner workings of the magic used by our web company, but I know it's based on Amazon's EC2 infrastructure. I'm sure as a non-profit that you're extremely cost conscious and something like that might be a good fit for you. We're highly seasonal in our work, so during the busy times of the year they ratchet up the compute services available and we pay a few extra dollars. Then during the off season we ratchet it back down. It works WELL. In general EC2 is considered overkill for small sites, but for high traffic sites it's considered very affordable. When you say 1000 nailing the server with page requests, it makes me think it would be on the affordable side for you.
Now, we're not exactly their favorite customer for a million different reasons, and the working relationship is.. um.. strained. So I don't think I'd recommend the exact company we use, you can surely find others near you if you need help. If you want to try to roll-your-own, here's an (old) example of what you're looking at: http://www.sunsetlakesoftware.com/2008/09/13/running-drupal-website-amazon-ec2
----- obSig
(Disclaimer: I'm a Google engineer, but I don't work on or have any particular affiliation with AppEngine other than being a very satisfied user for some of my personal projects.)
Depending on the software you're using, AppEngine may or may not work for you, but if it does it's highly reliable, arbitrarily scalable and quite easy to work with. At the volumes you're talking about it's not free, but it's also not too expensive; perhaps less than what you're paying now.
Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
As others have pointed out, you've missed a few details. So, you're getting 503's -- do you know why? Is processor or disk load too high? Is your server misconfigured? I'm guessing at this point that your host is managed by a third party -- have you asked them to explain the problems you're having? Have they offered a solution (even if it might cost you more money)?
:)
What is your budget? What are you currently paying? What about your level of in-house experience? If you're a linux / unix admin (or have one at your disposal) you might be best served by using either a managed VPS or colocated server (or a couple, behind a load balancer, but that gets to be more expensive and complicated to set up).
If you're less willing or able to manage hosting yourself, be aware that generally, you'll get better service from managed hosting providers if you're willing to spend money. Even though you're a non-profit, probably with a limited budget, you shouldn't skimp on hosting if you decide that a managed host is right for you. If you typically have ~1000 active users on your site, any downtime will hurt you -- even if it doesn't cost you in terms of donations, it will make you seem less legitimate.
Anyway, here are your options:
Unmanaged VPS -- cheapest option, will require some technical expertise on your end. Potentially less reliable than colocated servers.
Colocation -- Can be expensive, requires a fair amount of technical expertise. If configured properly, your site should be very, very reliable, but there's a lot of room for error.
Managed hosting -- Forget about paying $80/year for managed hosting, considering the amount of traffic you're getting. You may have to spend $100/month or more. Good managed hosting won't require much experience from you or your staff, and will be less expensive (probably) than colocating multiple servers. Do research, read reviews, etc. to find a provider you feel comfortable with. While price is an important consideration, you shouldn't go with the cheapest option just because it's the cheapest. If you need to talk to a technician at 3am, you want to be sure that you're going to get someone on the phone when you call. It's also probably important that the person you get when you call during an outage / emergency isn't an idiot, and with most bargain-basement hosts, you're lucky to get a human on the phone at all.
Good luck
Facts have a liberal bias.
Nothing special here except you need an actual experienced consultant or employee to do this. Just being able to chant words and feeling geeky does not mean you have the skills to competently run this. All small businesses like to think they're unique but you're describing very average needs that just need to be addressed by a skilled person - non-profits are not one of a kind though they may have some special privacy/regulatory needs. That's a very small part of what competent IT staff can manage. Good luck there. You may actually have to pay a market rate salary/contract for this instead of guilting someone to give you less than competent service. Seen this before with non-profits and they just flush money down the rat hole instead of spending wisely. Or you can just keep throwing your tax-supported donations into the toilet after you've taken your personal share like most US non-profits.
Brilliant company.
But it is free for 501(c)3s.. http://wiki.dreamhost.com/Non-profit_Discount
Hey.. you might want to get that just to have a backup..
I work in NPO field exclusively and have dealt with a lot of hosting situations for different sizes of organizations. Since you are being tasked with finding a host and based on your description I am betting that the site isn't maintained internally but was outsourced and the org just adds content now. I would recommend you find out what CMS you are running. If you aren't running a CMS I would recommend you migrate your site to one of the major players that is well supported by its community and consultants. You will have vast pool of knowledge to pull from when things go wrong. Once you know what you are running you can then select a host who specializes in hosting that particular CMS. I personally use Drupal or WordPress (large sites vs small sites) for our sites. I went the BlackMesh route for hosting since I am a one man team and they provide exceptional level of technical support and troubleshooting if you stick to their basic guidelines. For example they will tune and troublehshoot MySQL but not MariaDB. I want to be able to take a vacation - and they will do the first basic rounds of troubleshooting with my IT Manager while I am gone. They can basically help recover the site from normal operation failures. But, I was fortunate that we had a budget for me to buy into their level of support. However, even a service like that isn't going to help you tune your code and solve complex issues in your site. But, there are several good medium tier VPS and hosted solutions that will run $20-$150 that will serve your purposes quite well. None of this will be helpful to you until you have looked closely at what you will be hosting and know the specifications needed to host that site for normal operation and projected stressful traffic patterns. There are some good tricks you can do with caching software and smart practices to take with mass emails that will reduce the strain on your site as well. I would step back and identify your problems and what the current solution you have in place is exactly. I would also recommend you find a consultant who has experience in evaluating website platforms. They will be very helpful in sorting this out for you. This is not a consumer level decision you are making. But, one that will require an amount of technical expertise and knowledge of platforms. From that you can figure out how to fix the problem with a solution that also has room for growth moving forward.
If you have a lot of static content, eg, css/js/gpf/gif/swf/png/bmp, etc and do not have access to CDN, at least put an nginx proxy in front of it that loads it all, and forwards the rest off the content to apache (or better yet, just migrate completely to nginx if possible). Does your app have any caching at all? Would memcached be beneficial? Running a stack trace on all http/php processes should give you an insight as to what is going on. Sometimes it;s lacks of resources, sometimes it's something as simple as a buffer needing to be increased somewhere.
Fuck Ajit Pai
This.
If you're here for help on this, you're doing it wrong. Get someone on board that can take you through these decisions (because there are going to be more involved than just this), someone who can do the groundwork analysis for you.
I hate, hate it when people give this type of answer because it's very incomplete. Yes, it's advisable that they hire a techy but how do they pick one? There are tons of web admins kicking around, just like contractors, lawyers, accountants, etc. At least give the poster some clue about what they need so when they're shopping for an admin they can ask the right questions. Most times that's the fundamental problem, they buyer doesn't know what's involved, doesn't know what questions to ask from prospective vendors, therefore delays finding someone because they simply fear hiring the wrong person.
So c'mon, if you really want to help give them some real answers (I would but I'm pretty clueless in this area myself).
Colo a box, and find a competent admin. 1000 concurrent users isn't small either by the way. You also completely neglected to mention what the site was written in, and what webserver you are using. There is a major difference if you have 1000 concurrent users on apache tomcat, or a simple php site.
Personally you are better off hiring someone in house to manage it, but do yourself a favor, and do your research. There are a lot of people in the industry who talk big and suck at what they do. If he cant look at what you have, and setup a proper infrastructure for it within 30 days, fire him. The other option, is look at the smaller companies to do managed hosting for you. They usually have a few racks in a DC they use.
Dont bother with these big companies like hostgator. Most of their employees are worthless. Not to mention the recent story about one of their admins backdooring their servers. The more reputable ones stretch their employees too thin, so unless you are a squeeky wheel you will get neglected.
Just out of curiosity, is your current provider by chance BlackBaud Enterprise Solutions, or one of their many acquired products?
At my last position, I worked on moving the company from using BlackBauds 'CMS' which consistently threw 503 errors under even the slightest type of load. I would definitely be interested in providing you with some details and requirements for a server. It really does depend on, just like many others have said, what the expectations of your site are.
Do you have a ton of static content? Is it a dynamic environment with regular changes.
I would definitely look in the ways of a VPS, or some other system with root capabilities so you aren't bound by another institutions red tape etc. I know when I worked for a non-profit, just getting through internal red tape was a pain in the arse, and then getting through the red tape of BB was just as bad, if not worse.
Why not call someone who I dunno.. does web hosting, have them evaluate your site and give you recommendations on what product(s) you need to successfully handle your spikes in traffic?
Rackspace comes to mind (they have their cloud services which if you know when spikes might happen ahead of time, you could ramp up the capacity to handle the load) ..
Beyond throwing hardware at the problem, as others mentioned, having someone evaluate the actual site/content and determining how to streamline it to get more page views/sec perhaps your running on a CMS currently w/o correct caching or could possibly dump your live site out to static pages to get a lot higher # of page views/server..
Without any details on what you are currently using for your host/hosting plan or your website setup, its impossible to provide exact details on what you may or may not need (perhaps it is as simple as going with a better equipped hosting provider). Outside of that, other constraints will be needed (ie budget) to tailor something that fits the organizational objectives.
Bigger is not always better. As a small hosting provider myself, I have picked up many clients from major providers because I offer a consultative approach to my customers, especially during the pre-sign period where we as a team need to understand their environment, usage patterns and availability requirements. While you may pay a little more, it is completely possible that a smaller provider will take the time to understand what you have and what the issue is before telling you the proper solution. I'm purposely not putting my company info out here as there are many good small providers. Some probably within miles of your office. (Good for going to lunch with them periodically to discuss your concerns/issues/plans.) As an FYI.. we have had a number of clients using Java apps on previous providers where JAVA was the problem. If you're using java or some java based server, do yourself a favor and get off of it.
Here are your options:
1. Get free hosting elsewhere. Pick a random hosting compnay. You can get nearly any cheap-ass web hosting company to offer you a "free" account which will likely be on shared hosting. Your service probably won't improve. If your code is the problem, you'll experience the same issue at your new host. Lather, rinse, repeat. Keep switching until you do one of the three options below.
2. Work with a larger hosting company who is more B2B oriented to obtain free / reduced cost / sponsored hosting. Tell them your problems *up-front* and what you need help with. You'll likely be talking with a Marketing department who is willing to sponsor the hosting costs, so they won't actually know anything about your problems or how to fix them without engaging support/operations. They may be able to refer you to someone internally or externally who can help, and you may get better support or assistance (or maybe not - tell them upfront what you need so they can tell you upfront what they'll help with. "SLAs", ya know?).
3. Find a volunteer developer/admin who is willing to help you troubleshoot. If you can't afford to pay someone (as recommended many times above), then this may be a good alternative. There are local user groups in your area for PHP, Python, Wordpress, Drupal, Joomla, Java, etc. Figure out what's running your website and start attending the relevant meetings. Start networking and making friends in the communities if you can't afford to hire a professional outright. But be wary of less-knowledgeable assistance from a volunteer who may steer you in the wrong direction during the troubleshooting process - he may tell you that you need to do X or Y, when in reality, he don't actually know shit and is just recommending different things to hide his inexperience.
4. Pay for real hosting and/or a real contractor to assist you. Money solves a lot of problems. If you're a large, multi-national non-profit and your brand is at stake, this is your best bet. What is "real" hosting? The best hosting service you can afford, with the level of service you need. This could be a managed, B2B provider or just a guy running services out of a rack in a local datacenter. No one here can tell you what's right for you without further consultation.
I've worked for both shared hosting companies and enterprise-level managed hosting companies. Both support non-profits, and both go about it very differently. Start talking to them and see what you can get. And attend those user groups! You'll find an amazing wealth of knowledge and resources there.
advise them of the problem.. they'll either fix it (problem is on their end) or upgrade your hosting (problem is on your end, your site, or lack of subscribed resources to support it)... you're paying for a managed solution -- let them manage it and STAY OUT OF THE WAY.
Write a grant proposal. I am sure there is money out there at the state and federal level, that with the proper justification, can be used for this purpose.
Based on my experience via my wife's work in the state affiliate of a national non-profit, I feel the OP's pain. The non-profit flag is code, and it decodes to incredibly financially tight fisted and technically naive as an organization.
The OP's org likely spent money ONCE to have a professional set up their web presence, without any budget or plan for follow-on maintenance, upgrades, or refactoring. If they thought about it at all, they likely assumed they'd handle these issues with the luck of having someone tech proficient on staff or get someone to donate their time.
Thus, offering what the OP ought to do is a waste of time. It'd be a huge project to write up the justification to spend significant money on this, and the management chain will want to see alternatives have been explored, first.
So, to the OP: your best bet will be to look over the high customer-service ISPs mentioned in these comments. Another alternative is to see if a local college/uni with an IT/CS program has any fourth year undergrads capable enough to be productive as interns.
Luke, help me take this mask off
I do not typically see HTTP 503 error codes for static web pages so I am going to guess you are seeing the error for dynamic web pages. For dynamic webpages, a CDN is of limited usefulness.
Things to look into:
If you continue to have problems with your current web host, then the company I work for (Steadfast) does provide managed web servers and have been able to resolve these types of issues for other customers in the past. You can also get advise about other web hosting companies with managed web server solutions from the Web Hosting Talk forums. If you have a control panel such as cPanel, Interworx or Plesk, it should be fairly easy for you to migrate your websites between hosts. Otherwise, changing web hosts may open up another can of worms where you become responsible for transferring the web sites to the new host before being able to proceed further with addressing what is causing the 503 errors. Good luck.
And so . . . with my nonprofit's focus on the prevention of teen dating violence I have people in school districts regularly contacting me via email and/or visiting my website from schools. From time to time my IP address used to wind up on block lists and I would spend a fair amount of time contacting school web admins to allow my emails through and/or access to my site.
The host I use (HostGator) has worked well for me but unfortunately does not offer a shared-but-not-with-any-adult-sites hosting plan. What I've done to ameliorate the impact is: (1) use Google's fantastic (and FREE) support for nonprofits by using the free Google Apps service to route all of my email accounts through Google and (2) use a free service to monitor my inclusion on any blacklists (MxWatch Monitor via MxToolbox.com). As a result I've been able to avoid almost all email issues and have been able to address any other blacklisting issues as soon as they crop up.
I don't have the web traffic that you do (approx 5,000 unique visitors daily and less than 50GB monthly bandwidth) but HostGator has been almost completely hassle-free. This is the third hosting company that I've used in the past 7 years and I doubt I'll ever have to switch again. I pay around $20 / month and that includes reseller hosting (I help out a few other sites for small nonprofits that don't have a tech background by hosting their sites for them).
If you need further info feel free to contact me - and if you decide on HostGator I'd be happy to give you a referral code (my org could use any and all financial support possible!!!).
JAGga.me ----> Producing video games addressing emotional health and wellness issues affecting teens.
Both work well and stay up most of the time. Rackspace cloud sites scales up to Millions of visitors per month and cost $150 per month to start. Media temple grid starts at $20 per month. Add some caching if you use a CMS like Wordpress.
Easy, sign up with square space. You can design it yourself and you don't have to be a genius to do it. Your boss could do this.
http://www.squarespace.com/
Plus they got a free 14 day trial, no credit card needed.
We had issues with our host as well. Best thing to do is learn about hosting. Ask them if they over provisioning. If they stutter or side-step, you just don't want them. Personally I can't stand AWS either, they are best used as a backup. We ended up with HostDuplex but your mileage may vary..
As a web host I can tell you this is coming from the wrong angle, there's no "Large Non-profit" package I could sell you that'd make you happy within your budget. $15/mo general web hosting has capacity limits by design. Ultra-redundant with a 24/7 team of on-call remote hands and the full rack of dedicated hardware that comes with it may not be a smart use of your org's money. Hopefully these will help you better flush-out your solution:
Consider your needs in three categories:
1) Infrastructure.
- What does it take to drive your site?
- What's your uptime requirement?
- What OS/Software/Hardware are you running on now?
- What does traffic look like today? 5 years from now?
- What bottlenecks/problems are you experiencing?
2) Support.
- When things break who's the first person that gets called? Who's the second?
- Who will maintain the infrastructure (security patches, hardware updates, etc.)
- How important is it that you get personal, escalated support at 3am?
3) Cost.
- What's the budget for a Large Non-profit? $3/mo, $30/mo, $30,000/mo?
- What price point can you realistically sell your board?
Typically at least two of these will drive your needs for the third. As a Large organization you're probably looking at 1 & 2, then selling 3 to the board. That can be a whole other mess, but a well designed needs document and a decsion-maker friend to bounce ideas off can work wonders. Make sure to flush out the why, "what happens if we don't", and alternate options for these points, which are by no means comprehensive for your project.
Also consider having a developer sit-in on the needs assessment. 1000 people at a time doesn't mean much with no context of the site. It's been mentioned above: is that 1000 people browsing pure html, 1000 people on a heavily-optimized PHP site, or 1000 people running data intensive operations (like multi-million row searches)? I've personally brought down big servers with crappy PHP code, and run 1000+ active vBulletin forums on 10 year old whitebox servers. It's all in how you identify and address bottlenecks, and a trusted developer can make that process easier.
Hope this helps. Good luck with your search.
--- Need web hosting?
http://www.sherpaconsulting.org Claim they work with non-profits.
At EasyTomato.org we use Dreamhost as their shared hosting in free for 501(c)(3) orgs and then we use the free edition of CloudFlare in front of that. We don't have 1,000 users on at a time, but we've handled 250+ at once with no problem. The price is right at least...
And if I had an Index File, I could look up the Index File in the Index File!
As if...
If you are indeed a charity, I would happily have a look at your front/back end and typical usage patterns and based on that give an honest recommendation as to what you can do to improve stability. I currently manage/own/run The hitchhiker's Guide to the Galaxy (both the foundation/charity and h2g2.com), the Lycos Chat's in Europe and a number of smaller sites/companies and would be happy to lend a hand. Pop me a mail on Brian (a) Larholm.org if interested.
-kernel picnic-
You told us who you are but you reduced your requirements to "a webhost". That isn't enough information for us to make recommendations.
If you are concerned about scalability, consider using cloud resources to run your site. They are designed to scale to extremely high levels.
For example, you can host static web content directly on Amazon S3 with no need for a 3rd party webhost. You pay for what you use in terms of storage and bandwidth. You say your load may be 1000 concurrent users, which should not be a problem for a decently managed dedicated server, but I would venture to say S3 can scale out of the box to many orders of magnitude of that number. I.E. if you need 5 million people to be able to click a link at the same time and not break your site, then S3 would be a good option to consider.
A lot of content is dynamic for no other reason than nobody ever thought about why it couldn't be static. At work, I constantly deal with people that want to use dynamic content types such as aspx/php/etc when the page does not need to be dynamic at all. They want to spend $$$$ on servers to make sure we can handle load, then when I tell them to stick the form on S3 and pay for only what they use they look like deer in headlights.
Okay, I have to say that these are really very helpful suggestions overall and I appreciate each and every one who took the time to write. We deal with the "charities should curl up and die" people all the time but most people when they look at who we are and what we do are pretty impressed. We have great charity ratings, and work all over the world doing amazing things for a cause that almost anyone can believe in. And part and parcel of that is keeping the overhead as low as possible (no, no grandiose exec salaries here) so that as much as possible goes directly to the cause.
Unfortunately, we already hired someone who set us up with this current host and we are kind of once-bitten, twice-shy about being left in the lurch again with a second premium paid "consultant" who recommends this or that and then scratches his head at something unexpected and goes "dunno" and leaves. We're actually big enough that we CAN pay for answers, but our hosting provider doesn't have them. It's been months.
So my question is less about how to squeak by on a charity budget with the minimum possible hosting than on how to better know what performance the tech specs will mean. The comment that came closest to answering this was the one who offered Dreamhost and said they'd had 250+ people online at the same time. We probably need something much more heavy duty.
In answer to those who need more specs to know what the answer should be:
We are an official 501(c)3. We use Drupal as our CMS, have over 100,000 nodes, mirror the site into 10 different languages, and have content that is updated daily. We triple cache info and compress header files to give us added speed. All jpgs, etc., are optimized for size prior to uploading. When our emails go out they often hit hundreds of thousands of people at the same time, and people come to the site to either make donations or take actions -- sign a petition, etc. This info gets synced into Salesforce and Team Approach. And yet...despite paying for "load balanced" hosting at our current host, anytime we've got 250+ people on the site we start seeing pages that can't be found. We have tried for over a year to get answers from the consulant, from the hosting company, from anyone, but it's a typical "not us, did you ask them?" at each place. I understand that these issues are not necessarily easily solved, but the current prevailing opinion is that our hosting provider isn't providing true load balanced hosting and we're tired of just waiting for Godot on the answer. So we need to switch.
Our only real requirement is that we have a hosting provider that is also able to support/manage the Drupal backend, as we don't have the capacity to do that ourselves. In this case, we're stuck with a fixed budget that's equal to or less than what we were paying previously.
So knowing, for example, that Slashdot runs on XYZ specs, or the NY Times runs on ABC specs, or Amnesty International runs on QRS...that kind of thing would be very helpful. Or if anyone out there, profit or non, wants to share their hosting specs versus their load, that would be great.
Again, thank you for the help!