My first swashbooking (experiment ?) on "art of capacity planning". Here is the essense of the book:
Capacity is different from performance. We can squeeze more out of existing infrastructure by improving performance, but increasing capacity is the only solution to meet more demand. Bacon maker has three trucks to transport bacon from one place to another. If the demand doubles he can squeeze more out of existing three trucks by driving them fast, but the alternative of doubling the trucks to six is more viable solution.
Measure the existing capacity, forecast the trend and estimate future capacity needs and find out when to order new equipment.
Have a central place for deployment. Access individual servers only for trouble-shooting or forensic analysis. Dont access individual servers for deployment. Configure the new servers to automatically deploy from the central server.
Virtualization, cloud computing helps you to focus more on core feature additions instead of worrying about capacity planning. Wordpress, a blogging company moved all the storage to S3, and focused more on adding new features. To reduce the data movement to-and-from S3, it built a caching layer which lies between S3 and wordpress frontend.
Periodically updating your online users when the service is down helps a lot.