Hacker News new | past | comments | ask | show | jobs | submit login
A Short Rant About Hosting (blog.pinboard.in)
214 points by jakewalker on Aug 25, 2011 | hide | past | favorite | 62 comments



After reading Maciej's last post about his "cathedral" of a server, I moved NewsBlur off of half a dozen Linode VPSs (512MB and 2GB machines, for app/task and db respectively) and onto a hosting provider that offered both dedicated bare metal and a variety of VPS configs.

I'm now paying $405 / month for 6 servers, and they range from 2 dedicated db machines with 12GB and 16GB of memory to 1GB virtualized app and task servers that cost $10 to $20 per month.

What I've learned is that where it really matters, in terms of I/O performance, the dedicated servers make great machines, naturally. But the insanely cheap VPSs, which I use for distributed feed fetchers (task servers) and web servers, are wonderful because they are so inexpensive. I have redundant load-balanced machines, so when I need to take down an app server or it fails for some reason, nginx immediately routes around it. And it's costing me only $10 / month per machine.

And task servers have served me especially well as VPS. It depends on the intensity of the task, but for such a small expense, you get 4 cores and enough memory to go nuts. And if you're pulling off a task queue, you can programmatically spin up more to deal with a higher queue load. When you move entirely to dedicated machines, your spin up time is on the order of hours to get it prepped and connected.

I'm just thrilled that many decent hosting providers (with <table>s for salespeople) offer both. I wouldn't last without being able to have a mixed setup.


Yep.

If your usual working set (code+data), or better still your entire working set, fits into RAM easily and doesn't see a lot of write activity (where in RAM or not it needs to be copied to disk at some point), cheap VMs are often a no-brainer. The I/O hit will only seriously affect you if you need to reset he VM so the working set needs priming in RAM again.

As soon as you need I/O bandwidth (much writing, or a data-set that doesn't fit easily in RAM) you need a physical machine as the I/O contention between you and other VMs will completely kill performance.

So as you say: real machines for significant database work and cheap VMs for your web servers and other worker tasks is often the most cost effective arrangement. Don't go too cheap on the VMs though for production work. I generally avoid "burstable RAM" options as I find them less reliable (I'd rather have a fixed amount that can all reliably be allocated as needed, than unpredictable reliability forcing me to put procedures in place to deal with unexpected OOM situations). And make sure you properly test the bandwidth carrying capacity: I've seen cheap hosts get good reviews where the reviewer tested incoming bandwidth but filed to test outgoing - this is not all that useful as a hosts outgoing bandwidth usually sees much more contention than the incoming.


What provider is that?


I use reliablehostingservices.net. Been solid for about 6 months now. Billing sucks (credit card for every server because I bought a few of them at different times -- so different billing cycles), but that's part of the benefit.


Glad to see another reliablehostingservices.net customer - been using them for > 1 year. Decent value for money, I do wish they had a good selection all the time - it's a little hit/miss at times - but overall happy with them!


Sounds like StormOnDemand.com by LiquidWeb


"Quick quiz: can your entire sales staff be replaced by a nicely formatted HTML table? If the answer is 'yes', then you are subtracting value and wasting my time."

My god that is good. I spent two weeks about three years ago going around the country looking at data centers to move our systems to (30+ servers that were currently in a co-lo and we were looking to go to managed/leased).

We'd get pricing estimates that changed by the time of day and who emailed it to us. The shopping process made the migration seem easy.


seriously. i like to buy parts for things online and i am infuriated when there is a "call us" for what is ultimately a $37 part or whatever.


My rule of thumb is that if they don't put the price out there, either they're too expensive, or they aren't worth buying from


agreed. When I am looking for something, I want to make up a quick list of providers with a rough idea of what they offer and for how much. After I've got my list, I'll happily call them for more details and pricing options, but unless I can have a rough idea beforehand, I'm never going to call them.


It's like a time/money offset: waste mine to justify that you get paid for yours.


Couldn't agree more. For inspiration, see SpaceX's pricing page (tldr; $54M for a rocket to low earth orbit) http://www.spacex.com/falcon9.php#pricing_and_performance

Lesser companies are shy about pricing for two reasons: * They simply can't compete on a cost/benefit basis * They want to capture "consumer surplus" (see Joel's awesome writeup, http://www.joelonsoftware.com/articles/CamelsandRubberDuckie...)

"Capturing consumer surplus" is an MBA euphimism for "charging different people different amounts for the same product, based on whatever we can get away with".

Sales dweebs love it because it makes for smart-looking powerpoints at the end of the month (look, we charged these forty customers double! free money!)

What they can't measure is how many saw the "call us" button on the website and weren't gullible enough for that shit. Those people simply left to find a competitor with more transparent pricing.


Why do people think a spreadsheet is less likely to rip them off than a person?

I mean, sure, if you want to, feel free to walk into a car dealership and pay sticker price. Go to the mall and buy that hardcover book at MSRP.


A spreadsheet doesn't waste time in the negotiation dance. I'll gladly pay for convenience and directness, which I do frequently.

Think of it this way, given the choice between paying X for a service, or having to "Call for pricing..." which will you do?

Personally I'd take the X option even if it cost more.


And that doesn't mean you can't still call for a better deal.

The sticker price should at least help you scope out whether your project is feasible on their system.


Because a spreadsheet won't waste 10 minutes of my life talking about football, etc. before showing me a price.

I'll buy a car from one of those no-haggle car dealerships. Yes, they're probably padding it out, but it's worth it not to have to chit-chat.


"I'll buy a car from one of those no-haggle car dealerships. Yes, they're probably padding it out, but it's worth it not to have to chit-chat."

This, or take a page from an economy handbook and set up the game so that it works to your advantage (hint: if you're physically at a dealer before the negotiation starts, then you've already lost.) Decide the exact model you need an email a dozen dealers for a quote.


A spreadsheet doesn't earn a bonus.


You can always try to negotiate the sticker price if you want. Even if there's no sales staff there's someone who should have the authority to offer you a discount, though in a market like shared hosting that's probably not going to happen much.


I agree, this depends so much on what type of hosting you are looking for. When it comes to shared and VPSes, HTML table is way to go. But when it comes to moving servers worth of $500000 to your datacenter, then I really expect that the company has some employees who I can talk to and negotiate the price.


As someone who runs both AWS and my own dedicated servers I'm starting to see a pattern.. MBA types talk about 'new trends', 'data centric startups' and new opportunities opened up by AWS and such. OTOH practical advice from real people with successful startups - marco arment, jakewalker, others, seems to focus more on the unseen problems of virtual and advantages of just getting your own server. Am I right?


This analysis is a bit too shallow.

Marco Arment and idlewords (I don't think you mean jakewalker, who is an attorney; you mean idlewords, who runs Pinboard) fit a specific profile:

They've bought dedicated servers before. So there's no learning curve required to buy more dedicated servers.

They're more than capable of serving as their own sysadmins, and in fact I believe they do so. So the economy of scale of, e.g., buying some Heroku dynos and letting one admin team administer your machine along with several thousand nigh-identical machines isn't as much of an issue.

Their services are well established. Neither Pinboard nor Instapaper are going away, at least on a timescale of years. They have a userbase and a revenue model and are well out of the "experimental" stage. They can afford capital equipment and be sure that said equipment will be utilized.

Their services aren't evolving rapidly, on a scale of days or weeks. They don't tend to beta-test features that would require lots of additional hardware if they got popular.

Their services scale fairly predictably. These are paid apps with a steady clientele that isn't just chasing fads. By this point I bet Marco can plot the rate of change of Instapaper's paid userbase on a graph and tell you within, say, 25% how big it is likely to be in six months. The service is unlikely to experience unusual usage spikes unless Marco deliberately creates those spikes by e.g. having a sale or releasing a new version. Even iPhone/iPad releases, which might drive sales, tend to occur on a fairly predictable calendar.

Their services just aren't all that large on the back end. They don't run big server farms, the kind for which you must spend a few hours per week just managing your inventory of spare parts and un-racking and re-racking things.

If your business also fits these criteria, then sure, dedicated servers are easier now than they have ever been, and there are still things you get with dedicated hardware that are harder to find in the cloud. (He's right about the predictable disk I/O.) But my company managers swear that AWS prices, full-freight as they are, are still a bargain relative to the humans and capital required to run our medium-to-large-sized datacenter with dedicated hardware.

[Disclosure: I work at an AWS-based Drupal hosting company and have never owned a dedicated server. ;)]


"When art critics get together they talk about Form and Structure and Meaning. When artists get together they talk about where you can buy cheap turpentine."

- Pablo Picasso.


Good one.


"...the unseen problems of virtual [servers] and advantages of just getting your own server. Am I right?"

In my experience, you're right. For the same monthly amount of datacenter cost I can either install a pretty beefy machine, or rent a underpowered VPS.

A disadvantage of a VPS is that they're always artifically limited in memory, disk space and CPU power, whereas in the case of a real physical server machine I can put as much RAM/drives/CPUs I want.

An advantage of VPS would be no hardware cost, no redundancy concerns, easy to add/delete instances, etc.

However, for me the advatages of real machines weigh heavier than those of VPS solutions, at least at present.


Honored as I am to be mentioned in the same breath as Marco, I'm pretty sure you meant idlewords, who runs pinboard, and not me. I haven't leased a private server since about 2004! I just posted the story.


I particularly like this nugget:

> Quick quiz: can your entire sales staff be replaced by a nicely formatted HTML table? If the answer is 'yes', then you are subtracting value and wasting my time.


What if the person doesn't know exactly what it is that they need? I know a lot of people who know software but aren't as solid on knowing how to scale the hardware side. For those people a table isn't really helpful.

That said however, it should be an option to have that access. I personally prefer Joyent as a web host. They've shown really solid I/O numbers via their benchmarking. I've been a happy customer since it was TextDrive.


What if the person doesn't know exactly what it is that they need? I know a lot of people who know software but aren't as solid on knowing how to scale the hardware side. For those people a table isn't really helpful.

I don't think a salesman is the first person you want to talk to to help you in this regard.


This is actually a sad state of affairs. It used to be that the salesperson was exactly the kind of guy who could solve this. Now they're just too busy padding deals with stuff almost everyone knows you don't need.


It's a top-down problem. If the company's executives are pushing salespeople to work in the 1990's-era enterprise sales model, you get websites with zero useful information and a phone number for upselling.


That's kind of what I was trying to say. The fact that "sales" is so bent on selling you stuff instead of getting you the right stuff for what you're trying to do instead is a problem.


In those scenarios, what you need is a systems engineer, not a sales representative. Sales guys generally don't know anything more than the price sheet and the available inventory.


> Quick quiz: can your entire sales staff be replaced by a nicely formatted HTML table? If the answer is 'yes', then you are subtracting value and wasting my time.

If they don't know what they need, then the answer to the above question is 'no', and hence doesn't apply. In that case, you might consider asking the provider to recommend what sort of setup "solution" you require. But I wouldn't want to do that through a sales guy, especially someone working on commission. I'd rather get some advice from a disinterested 3rd party (even if it's just asking on StackOverflow/ServerFault or whatever) and then look for suppliers offering what I need.


There's a distinct audience for the sales reps - likely more on the business or procurement side. Any good provider will have sales engineers who can speak to the technology side and the impact technology has on the business or financials of the overall hosting engagement.

A multi-person model is structured around larger enterprises that already have separate staff representing these different roles.


I second your Joyent recommendation. An article of mine made it to the top of Hacker News' frontpage - said article is hosted on one of their SmartMachines w/only 256megs of RAM… running blogging software I had written myself. And it held up fine!

To fit within the confines of that amount of RAM, though, I've since switched to nginx… :)


Yea. I have two SmartMachines through them. One of the now unavailable 512mb machines and a 1gig. I've been pretty happy with both of them. There are certainly ways they could improve but it's clear that Solaris Zones as a way to do virtualization isn't going to show the same level of performance degradation as a typical virtualization setup.


I wish there was something with the flexibility of AWS (scriptable machines, disk, etc) but for whole machines and networks - no multi-tenancy.


Besides the Softlayer offering already mentioned, check these out too:

http://www.newservers.com/language/en/

http://www.stormondemand.com/servers/baremetal.html


If you can stomach month-long commits, many shops will give you bootp/dhcp visibility in your private vlan, so you can burn/update machines however you like. I managed 140 systems at Softlayer with ~500 lines of provisioning script.


Softlayer also has hourly rates for their "Bare Metal Cloud" offering: http://www.softlayer.com/cloudlayer/computing/


It was "Edsger Dijkstra", not Edgar. (Probably no one else cares about this.)


Yes, a thousand times.

And I can also vouch for LeaseWeb. Their signal-to-bullshit ratio is indeed as excellent as their bang-for-buck.


I can relate to this guy. About month back I noticed that one of my servers (VPS at HostV) had dropped and hadn't come back for a week. It's used for dev stuff and acts mainly as storage for repo archives. Long story short, HostV had suffered some sort of file system problem, all my files were gone and they didn't even bother to send me an email. I can live without the files and shit happens but not emailing the customer, that's just idiotic.


One thing I additionally take into account is reviews of customers on http://www.webhostingtalk.com/


I like when you do email sales and they don't get back to you ... someone lost a large order from us this month for that.


[deleted]


Sarcasm carries poorly in text.


Sarcasm?


Softlayer are great at this. Their sites lists prices over $1200 but talk to sales and you can get it close to cut in half and if you order enough servers you'll get it at 75% discount. I guess the value of sales staff knowing about the customer is quite high.


Oh man, this kind of thing drives me up the wall!

Yes, differential pricing can be a boon to buyer and seller alike. If the seller could offer their product only at a single price point, they'd be forced to price it out of the range of some customers while leaving money on the floor from other customers for whom the expense is trivial. I get all that.

But no-one likes to feel like a chump being sized up by a con artist. Not even people with money to burn. When the default price is marked up so excessively, you're being taken for a ride, plain and simple. You should be boycotting them, not praising them. There's plenty of opportunity for differential pricing in the hosting space by offering a sliding scale of service-level agreements, higher resource limits, priority tech support, and other special features. Let's keep the douche bag negotiating tactics confined to the used car dealership lot.


So anyone who wants servers needs to talk with sales and negotiate a discount? I think the point of this post was:

Quick quiz: can your entire sales staff be replaced by a nicely formatted HTML table? If the answer is 'yes', then you are subtracting value and wasting my time.

When comparing between hosting providers, most lack the time and resources to negotiate with each provider to find out what the "real" rate is. Hosting should be a commodity, providers should treat it as such. I think there are probably good opportunities for hosting providers that provide an honest rate.


SoftLayer has the nicely formatted table. The prices on it seem quite reasonable - except they charge up the wazoo for RAM.


So that tells you there's at least a 300% markup on their services, plus you're paying for all those wonderful salespeople...


Fascinating from a marketing point of view - offer steep discounts to higher-value customers, and those customers will (a) appreciate the "discount" and (b) evangelize your service telling others to get in touch for said special discount.


Agreed. Call Softlayer and name your price. All my servers are 50% cost of retail.


Oh any their support is second to none IMHO. I've called at any hour of the day and had a tech diagnosing my issues on the phone with no wait.


Yes. Go with SoftLayer. We have tons of servers, and get a great discount, especially on RAM. They have been great.


comparing contegix managed hosting to others like AWS is apples and oranges. There is no level of AWS where you get a team of sysadmins answering your emails within seconds, 24/7.

contegix is worth every penny.


I've had several sites with Dreamhost for a long time and am very satisfied so far. They give you a lot for a low price. I don't use their Dedicated packages however, just shared and VPS.


I'm curious to know why he chose the company he did among all the companies he looked at. I agree with the concerns about the difficulty of sourcing these services, and this may be a large part of why AWS is successful-- they provide the service as a utility.

One of the cheaper companies on his spreadsheet is hetzner.de They have dedicated servers that go down in size to about $20 a month: http://www.hetzner.de/en/hosting/produkte_rootserver/x2

Note that their price includes VAT. If you're not a EU company, you don't pay the VAT and so the actual price is cheaper.

For our needs, we're going to start off buying a cluster. Probably 4-5 machines. As load grows, we'll add nodes and larger nodes over time. (A nice feature of Riak is that you can do this, just give the ring time to rebalance and you can migrate from one set of hosts to a larger one relatively quickly.)

VPS offerings lose a lot of their appeal in the face of a $20/month 1GB dedicated server! And with no setup cost, it is pretty elastic, though as you get to larger dedicated servers hetzner has a setup cost.

I'm not shilling for hetzner, I am just sharing them because I'm considering being a customer and and curious as to what others think about them. Also, curious if anyone else is facing the "we need to start with a cluster of machines, but we're a tiny startup at this point" issue...


desktop grade hardware - if that's your thing go for it.

I believe that if you're going dedicated, might as well pay for enterprise grade hardware (with ECC RAM, RAID disks) because you dont get all the nifty backups/clones/spin-ups that you get from the cloud.


If your server enclosures are made of elemental silver and polished daily with static-free cloths by computer science PhDs who are related by blood to Edgar Dijkstra, then I definitely want to know about that. Put a paragraph about it right under your price chart.

Now, that certainly would be something to pay for. Who provides that?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: