SUMMARYThis paper focuses on service deployment optimization in cloud computing environments. In a cloud, an application is assumed to consist of multiple services. Each service in an application can be deployed as one or more service instances. Different service instances operate at different quality of service (QoS) levels depending on the amount of computing resources assigned to them. In order to satisfy given performance requirements, i.e., service level agreements (SLAs), each application is required to optimize its deployment configuration such as the number of service instances, the amount of computing resources to assign and the locations of service instances. Since this problem is NP-hard and often faces trade-offs among conflicting QoS objectives in SLAs, existing optimization methods often fail to solve it. E 3 -R is a multiobjective genetic algorithm that seeks a set of Pareto-optimal deployment configurations that satisfy SLAs and exhibit the trade-offs among conflicting QoS objectives. By leveraging queueing theory, E 3 -R estimates the performance of an application and aids defining SLAs in a probabilistic manner. Moreover, E 3 -R automatically reduces the number of QoS objectives and improves the quality of solutions further. Experimental studies demonstrate that E 3 -R efficiently obtains quality deployment configurations that satisfy given SLAs.
This paper studies an evolutionary game theoretic mechanism for adaptive and stable application deployment in cloud computing environments. The proposed mechanism, called Nuage, allows applications to adapt their locations and resource allocation to the environmental conditions in a cloud (e.g., workload and resource availability) with respect to given performance objectives such as response time. Moreover, Nuage theoretically guarantees that every application performs an evolutionarily stable deployment strategy, which is an equilibrium solution under given environmental conditions. Simulation results verify this theoretical analysis; applications seek equilibria to perform adaptive and evolutionarily stable deployment strategies.
It is important in Service Oriented Architecture (SOA) to separate functional and non-functional requirements for services because different applications use services in different non-functional contexts. In order to maximize the reusability of services, a set of constraints (e.g., dependency and mutual exclusion constraints) among non-functional requirements tend to be complicated to maintain. Currently, those non-functional constraints are informally specified in natural languages, and developers need to ensure that their applications satisfy the constraints in manual and ad-hoc manners. This paper proposes a model-driven development framework, through the notion of feature modeling, to explicitly and graphically specify non-functional constraints in SOA. The proposed framework allows developers to validate non-functional constraints in their applications in an automatic and consistent way. This paper also describes how the proposed framework is implemented and effectively used for service-oriented application development.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.