Improving Software Performance and Reliability with an Architecture-Based Self-Adaptive Framework

  • Authors:
  • Xu Zhang;Chung-Horng Lung

  • Affiliations:
  • -;-

  • Venue:
  • COMPSAC '10 Proceedings of the 2010 IEEE 34th Annual Computer Software and Applications Conference
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Modern computer systems for distributed service computing become highly complex and difficult to manage. A selfadaptive approach that integrates monitoring, analyzing, and actuation functionalities has the potential to accommodate to a dynamically changing environment. The main objective of this paper is to develop an architecture-based self-adaptive framework to improve performance and resource efficiency of a server while maintaining reliable services. The target problem is distributed and concurrent systems. This paper proposes a Self-Adaptive Framework for Concurrency Architecture (SAFCA) that includes multiple concurrency architectural patterns or alternatives. The framework has monitoring and managing capabilities that can invoke another architectural alternative at run-time to cope with increasing demands or for reliability purpose. Two control mechanisms have been developed: SAFCA-Q and SAFCA-R. With SAFCA-Q, the system does not need to be statically configured for the highest workloads; hence, resource usage becomes more efficient in normal conditions and the system still is able to handle busty demands. SAFCA-R is used to improve reliability in the case of a failure by conducting a switchover to another software architecture. Experiment results demonstrate that the performance of SAFCA-Q is better than systems using only standalone concurrency architecture and resources are also better utilized. SAFCA-R also shows fast recovery in the face of a failure.