Web applications these days are mostly multi-tier for the sake of software reusability and flexibility. However it is very difficult to estimate the behavior of workloads in these tiers due to the fact that resource demand at each tier is distinct. So it becomes very confronting to allocate resources at each tier. In order to fulfil SLA (Service Level Agreement) requirements it becomes necessary to provision resources at each tier separately. Recently various approaches on control theory and dynamic approaches have been proposed for the provisioning of resources in cloud.