
Host Application Software
The diagram shows that the host application’s need to understand the particular implementation aspects of the platform’s system management is reduced by placing an intermediary layer that in effect interfaces and translates only the system management information that the host application cares about. The host application should usually care about only those issues that would degrade performance or cease operations, such as:
•Access to peripherals
•System performance
•Integrity of operations
The platform interface can be more than a wrapper around exposed system functionality: It could act as a filter with a level of intelligence. The platform interface could be designed so that the module could monitor system health and take proactive actions like initiating a handover, when circumstances dictate. The platform interface might also be responsible for translating system- particular messages and alerts into a normalized format that the application understands. The events that a host application most likely requires notification of are:
•Switchover situations
•Warnings of system failures
•The availability of system resources
All these events should be handled first by the platform interface and relayed to the host application only when they might impede performance.
3.3Development Issues
There are several issues that an application developer of a High Availability system architecture must be aware of:
•Redundancy
•Graceful switchover
•Hardened applications
•Code modularity
3.3.1Redundancy
Redundancy, or at least the awareness of redundancy, must be designed into the application. This requires that data be constantly normalized. The term data could mean anything from state information to an entire database. The ultimate goal is to have a system that appropriately responds to a switchover while maintaining the integrity of all system data.
The
•Utilizing intelligent peripherals that internally maintain state
•Creating innovative methods of database sharing through shared RAID architectures
These are just examples of data synchronization; there are numerous ways to share data that are dependant on your actual implementation.
High Availability Software for the Intel® NetStructureTM ZT 4901 Technical Product Specification | 23 |