HP Integrity NonStop J-Series User Manual

Page 60

Advertising
background image

1.

Numstatic

– Determines the number of static NSJSP processes.

2.

Maxservers

– Determines the total number of NSJSP processes.

3.

TANDEM_RECEIVE_DEPTH

– Determines the handling capacity of each instance of NSJSP.

4.

Maxlinks

– Determines the maximum number of TS/MP links. The number of simultaneous

messages that can be delivered to an instance of NSJSP is determined by Maxlinks. NSJSP
reads these many number of messages from the $RECEIVE file simultaneously.

5.

Number of Connector threads.

The configurations for Numstatic, Maxservers, TANDEM_RECEIVE_DEPTH, and Maxlinks
can be set under the Server directive in the <iTP WebServer Deployment
Directory
>/conf/servlet.config

file on OSS. Before configuring NSJSP, it is important

that you determine the maximum load that each instance of NSJSP is expected to handle. The
manner in which these configuration directives drive the NSJSP environment depends on
whether the SessionBasedLoadBalancing feature is turned ON or OFF.

“NSJSP Configured with SessionBasedLoadBalancing Turned OFF” (page 60)

“NSJSP Configured with SessionBasedLoadBalancing Turned ON” (page 61)

NSJSP Configured with SessionBasedLoadBalancing Turned OFF

The value of Numstatic must be [(Average Load)/(Max load one instance of
NSJSP can handle)]

.

Maxservers

must be [(Peak Load)/(Max load one instance of NSJSP can

handle)]

.

The value of Maxlinks must be set to the peak load that one instance of NSJSP is expected
to handle.

TANDEM_RECEIVE_DEPTH

must be twice the value of Maxlinks. Normally, to handle n

number of messages, you need n number of threads. In extreme cases, all the n requests may
timeout. While the same number of threads processing the timeout requests could still be busy,
you need the same n number of threads to process the new incoming requests. Therefore, the
number of threads that must be configured is (n + n = 2n).

The maximum number of connector threads, maxThreads must be equal to the value of
TANDEM_RECEIVE_DEPTH

.

For example:

The parameters Maxlinks, TANDEM_RECEIVE_DEPTH, and the connector threads are closely
linked to each other. These parameters are explained using examples. The following examples
assume that the httpd processes are configured to serve 100 simultaneous HTTP requests, and
all 100 HTTP requests are serviced by the Spring application deployed in NSJSP (that is, there is
no static content in the application). Also, the peak load that one single instance of NSJSP can
handle is 25.

Because the SessionBasedLoadBalancing feature is turned OFF, all messages between HTTPD
and NSJSP flow through TS/MP. The number of simultaneous messages that can be delivered to
an instance of NSJSP is determined by the value of Maxlinks; set the value of Maxlinks to 25.
NSJSP can now read 25 messages from its $RECEIVE queue simultaneously. In an extreme case,
all the 25 messages time out; there must be enough space in the $RECEIVE queue to accommodate
25 more messages. Therefore, $RECEIVE must be opened with a Receive Depth (controlled
by TANDEM_RECEIVE_DEPTH) of (25+25). Thus, you must set the value of
TANDEM_RECEIVE_DEPTH

to 50. The reason for setting TANDEM_RECEIVE_DEPTH to a value

of 50 can be explained as:

To handle 25 messages, you need 25 threads. In an extreme case where all the 25 requests time
out, you need another 25 threads to process the new incoming 25 requests because the threads

60

Configuring Spring Applications on NonStop Systems

Advertising
This manual is related to the following products: