4 ms·
You can use abstraction layers to isolate yourself from issues with the underlying metal. For example, I had a good thread the last time the maintenance reboots
by josh2600 12y ago
You can use abstraction layers to isolate yourself from issues with the underlying metal. For example, I had a good thread the last time the maintenance reboots happened: https://news.ycombinator.com/item?id=9120289 https://news.ycombinator.com/item?id=9120289.
Solving multi-tenancy issues is hard, but not impossible. I think it's a lot easier with live migration. If a box is giving you problems, just move the load to a new box while maintaining the same IP addressing.
With respect to cost, yes, AWS gets expensive at scale, but if you're at scale your servers are generally not your major cost center (it's usually payroll and licensing).
- deitcher 12y agoThat is what I like about the cloud. Running in your own hardware lets you be, well, "lazy" about application architecture. Running in a place where it is shared and instances can disappear forces you to design a lot more robustly and nimbly. Of course, that design discipline is great wherever you are running....
- toomuchtodo 12y agoHardware is almost always cheaper than engineering time. Don't optimize prematurely.
- deitcher 12y agoYes, but engineering is cheaper than running after real-time problems.
- toomuchtodo 12y agoNow we get to the technical debt debate. Sometimes, you have to make good decisions now instead of perfect decisions later. The market doesn't care how elegant your code is.
- josh2600 12y agoThe market cares about uptime, and cost relative to return. Perfect should never be the enemy of the good.
- toomuchtodo 12y ago> Perfect should never be the enemy of the good. Only in a world where resources are infinite does this work.
- deitcher 12y agoNo debate, I agree with everything you have said. But sometimes you have to clean that garbage up because it does matter to the market.