Internet Scale Services Checklist

Internet Scale Services Checklist

A checklist for designing and developing internet scale services, inspired by James Hamilton's 2007 paper "On Desgining and Deploying Internet-Scale Services."

Basic tenets

Overall Application Design & Development

Automatic Management and Provisioning

Dependency Management

(How to handle dependencies on other services / components).

Release Cycle and Testing

Hardware Selection and Standardization

(I deviate from the Hamilton paper here, on the assumption that you'll use at least an IaaS layer).

Operations and Capacity Planning

Auditing, Monitoring, and Alerting

Graceful Degradation and Admission Control

Customer and Press Communication Plan

Customer Self-Provisioning and Self-Help