Hacker News new | ask | show | jobs
by atleta 1196 days ago
Because it's one more service that you have very little control over and one more service that you have to manage over a web interface or (maybe) their own command line tool.

It's on a separate network so they may go down and cause outage in your own app, go out of business, etc. (Yes, your IaaS service provider can go down as well, but that's a much larger operation and something that's very-very likely to have a much better uptime than what you could do on-site. And whatever the case is with that, it's still on top of that.)

Abstractions aren't free. (BTW, I don't see it as an abstraction, it's simply outsourcing. You'd use some kind of API anyway even if you hosted the job queue yourself.)

1 comments

"It may go down" vs. "Save X hours of dev"

Depends what you're building, but likely a good trade if it's an MVP.

At $30/mo you're already ahead if it saves you 1 hour of dev time.

Most of the time, I don't want control over my infrastructure (boring, low value); I'd rather focus on building features (fun, high value).

Sure, it might be good for an MVP where you don't mind about reliability, developer experience and how long you can expect the service to be in business.

If these start to matter, even picking a service from a list of possible providers takes time. Learning their tools, their APIs takes time, etc. OTOH if you have a project template, a setup you know, doing an MVP with that can be really cheap/quick. If not, I can see how this makes sense. But I'm not sure you can have a sustainable business just by serving people building MVPs.

And at least when I host stuff it still goes down at least from time to time and I have to put in additional time to fix it.

You need to put up significant resources in order to beat a dedicated team running this. Many companies can do that. Many can't. Even Twitter increasingly runs into problems with site reliability...

I never had any issue where the task queue would go down but not the rest of our infrastructure. If it's a large system (which is definitely relative) then it can become a job on it's own to keep this part of the system running. But by then, I guess, you'll have the resources too.

Also, you don't know the team size behind this service, as I mentioned in my original comment.

At least when I host this I’m in a position to fix it, instead of twiddle my thumbs and hope they’ll get around to fixing my environment soon.

It’s just scary to hand off such an important part of your system to a third party.