Adaptive Scaling Up/Down for Elastic Clouds
An approach for adapting distributed applications in response to changes in user requirements and resource availability is presented. The notion of elasticity enables capabilities and resources to be dynamically provisioned and released. However, existing applications do not inherently support elastic capabilities and resources. To solve this problem, we propose two novel functions: dynamic deployment of components and dividing and merging components. The former enables components to relocate themselves at new servers when provisioning the servers and at remaining servers when deprovisioning servers, while the latter enables the states of components to be divided, passed to other components, and merged with other components in accordance with user defined functions. We constructed a middleware system for Java based general purpose software components with the two functions because they are useful to adapt applications to elasticity in cloud computing. The proposed system is useful because it enables applications be operated with elastic capabilities and resources in cloud computing.
IDC