Management of enterprise web applications: Problems, approaches, solutions
Abstract
Web applications are a critical part of the foundation of a modern enterprise, supporting an ever increasing number of critical business functions. Effective management of enterprise web applications is a major objective of every IT organization. This tutorial presents state-of-the-art approaches and solutions covering the entire lifespan of web applications: planning, deployment, operations, and change management. The tutorial is organized in 4 parts. The first part teaches fundamental design issues for web applications: single-tier vs. N-tier, available technologies (J2EE and Net) and development tools. The second part addresses the planning stage, presenting an overview of application sizing methods: transaction profiling and load modeling: models for describing resource requirements for web applications, data center provisioning, which translates capacity demands into hardware, long-hauling, which further optimizes inter-data-center deployment by consolidating applications that are insensitive to network delays. In the third part, we present and position recent standards for service and application deployment, installation, configuration and change management, such as: IT Infrastructure Library (ITIL), a widely accepted process-based approach to IT service management, W3C Solution Installation Schema, an emerging standard for the installation and configuration of complex, distributed application systems, Global Grid Forum Configuration Description, Deployment, and Lifecycle Management (CDDLM) specification whose goal is to configure services, deploy them on the Grid, and manage their deployment lifecycle. The fourth part focuses on the ever-important topic of performance management for web applications. Examples for application performance instrumentation standards covered in this tutorial are the Open Group Application Response Measurement (ARM) specification and the CIM Metrics Model by the Distributed Management Task Force (DMTF). In addition, we give an overview of performance monitoring tools and techniques, service differentiation, clustering, load balancing and on-demand capacity allocation.