I just read James Hamilton’s comments on “Microslice” servers, which are very low-power, but high CPU-to-wattage ratio servers. As he explains in detail, at scale the economics of this design are compelling. In some ways, of course, this is the opposite of another big trend going on, which is consolidation through virtualization. I reconcile these forces like so:
- For enterprises with a high ratio of emloyees-per-server-CPU, the cost factors tend to drive cost as a function of the number of boxes / racks /etc. This makes virtualization on to a few big servers a win.
- But for enterprises with a low ratio (lots of computing work, small team), the pure economics of the microserver approach makes it the winner.
The microserver approach demands:
- better automated system adminstration, you must get to essentially zero marginal sysadmin hours per box.
- better decompisition of the computing work in to parallelizable chunks
- very low software cost per server (you’re going to run a lot of them), favoring zero-incremental-cost operating systems (Linux)
My advice to companies who make software to harness a cloud of tiny machines: find a way to price it so your customer pays you a similar amount to divide their work among 1000 microservers, as they would amount 250 heavier servers; otherwise if they move to microservers they may find a reason to leave you behind.
On a personal note, I find this broadening trend toward parallelization to be a very good thing – because my firm offers services to help companies through these challenges!