In AWS it is critical to build a scalable architecture in order to take advantage of a scalableinfrastructure. The cloud is designed to provide conceptually infinite scalability. However, you cannotleverage all that scalability in infrastructure if your architecture is not scalable. Both have to worktogether. You will have to identify the monolithic components and bottlenecks in your architecture,identify the areas where you cannot leverage the on-demand provisioning capabilities in yourarchitecture, and work to refactor your application, in order to leverage the scalable infrastructureand take advantage of the cloud.
Characteristics of a truly scalable application:
Increasing resources results in a proportional increase in performance
A scalable service is capable of handling heterogeneity
A scalable service is operationally efficient
A scalable service is resilient
A scalable service should become more cost effective when it grows (Cost per unit reduces as thenumber of units increases)
Reference:
http://media.amazonwebservices.com/AWS_Cloud_Best_Practices.pdf