Availability
All applications are available at least some of the time, but Web-based applications and mission-critical enterprise applications must typically provide round-the-clock services. If your enterprise application needs to work 24 hours a day, 7 days a week, you probably need to design for high availability. Advances in hardware and software have dramatically increased the quality of high-availability applications. However, availability is not easy to implement and requires a considerably more complex architectural infrastructure than the previous generation of client/server applications.
If your application requires high availability, you will want to understand how design choices help maximize application availability and how testing can validate planned service levels.
The following sections will acquaint you with designing, testing, and best practice strategies for creating a high-availability enterprise application.
In This Section
- Availability Overview
- Explains application availability and the causes of downtime.
- Planning Availability Levels
- Discusses setting availability requirements.
- Designing for Availability
- Shows how certain design choices affect application availability.
- Testing for Availability
- Explains how to test for availability.
- Best Practices for Availability
- Presents useful implementation strategies and best practice recommendations.
Related Sections
- Design Goals
- Gives an introduction to six important design issues: availability, manageability, reliability, scalability, and securability.
- Manageability
- Covers design, testing, and best practices for creating a manageable application.
- Performance
- Covers design, testing, and best practices for creating a high-performance application.
- Reliability
- Covers design, testing, and best practices for creating an application with minimal runtime failures.
- Scalability
- Covers design, testing, and best practices for creating a scalable application.
- Securability
- Covers design, testing, and best practices for creating a secure application.