I'm creating a php application that needs to be able to scale up to "1 million users". I know this question is subjective to the application, but I'm curious what type of generic setups are a best practice.
Currently I've setup an Amazon EC2 Mysql Cluster DB, and have 2 web application servers load-balanced.
As users and load increases, I am planning to increase the power of the EC2 instances, then as needed, add new instances of the application and MySQL servers.
Is this a standard approach to the problem? How do companies like Foursquare, Facebook, etc. handle scaling their IT infrastructure?