uCosminexus Application Server Overview

[Contents][Index][Back][Next]

4.3.3 Improving availability and fault tolerance

In a mission-critical business system, it is mandatory to continue the services provided by the system with stability and without stopping these services.

For example, among the services, there might be services that must operate continuously for 24 hours and services that incur a huge loss if the business system stops due to an error.

As a result of this, for Application Server that is the base of a business system, it is very important to prevent error occurrence, and, even if an error occurs, it is very important to locally control the impact of the error, and to continue the operations without stopping the business system. In addition to this, it is also very important to restore the location of error occurrence.

This section describes the characteristics of a system having high availability and fault tolerance that can be realized with Application Server.

Organization of this subsection
(1) Stopping the occurrence of full garbage collection
(2) Preventing error occurrence
(3) Improving availability when an error occurs

(1) Stopping the occurrence of full garbage collection

You can control the frequency of stopping the system by stopping the occurrence of full garbage collection.

The full garbage collection occurs because of an increase in objects in the Tenured area of the Java heap. The objects having a long life (objects having long usage time) are set up in the Tenured area. Among the objects having a long life, and which cause the full garbage collection, Application Server places the objects having a definite usage time in a unique memory space. This memory space is called the Explicit heap. Since the full garbage collection does not occur in the Explicit heap, it is possible to stop the full garbage collection of these objects.

Application Server places the objects related to an HTTP session and the objects for communication with a redirector in the Explicit heap.

The following figure shows an overview of stopping the occurrence of the full garbage collection with the Explicit heap for the objects related to an HTTP session.

Figure 4-6 Overview of stopping the occurrence of full garbage collection with Explicit heap

[Figure]

A part of the objects upgraded in the Tenured area are moved to the Explicit heap from the new area. As a result of this, the increase in the memory size of the Tenured area can be controlled and the occurrence of the full garbage collection can be stopped.

In addition to this, it is also possible to generate the objects that cause the full garbage collection in the application, in the Explicit heap directly by modifying the user application.

(2) Preventing error occurrence

You can prevent error occurrence by monitoring the operation status of an application and resources and by anticipating the errors. In addition to this, you can also set and monitor a threshold value and define an action for when this threshold value is exceeded.

For example, if full garbage collection occurs in JavaVM because of accumulation of requests, you can set up and monitor a threshold value in the frequency of full garbage collection occurring within a given time. If the threshold value exceeds, it is possible to automatically reduce the number of requests that are concurrently executed and to prevent the slowdown of the system.

(3) Improving availability when an error occurs

You can use the following functions to improve the availability when an error occurs: