In the systems used for executing J2EE applications, you can set up timeouts at the points shown in the following figure. In the following figure, a Web browser is used as the client. The points will differ when you integrate with a Web server, and when you use an in-process HTTP server.
Figure 8-9 Points where a timeout can be set (for Web server integration)
If the client is an EJB client, replace the Web container with the EJB client. You can set the timeout ranging from the EJB client up to the database.
A redirector will not be applicable when you use an in-process HTTP server, and therefore, a timeout will not be set up at points 2 to 5, and 13. The following figure shows the points where you can set up timeouts to use in-process HTTP servers:
Figure 8-10 Points where timeouts can be set up (for in-process HTTP servers)
The timeout specified at each point has a specific use that is described in the table below:
Table 8-26 Purpose of timeout set at each point and default timeout settings
Points | Type of timeout | Primary usage |
---|---|---|
1 | Timeout set in the server for receiving the request from the client and sending the data to the client |
|
2 | Connection timeout specified in the redirector in the processes for sending the requests to the Web container | Detecting failures in the communication path or the Web container |
3 | Timeout for sending the request header and request body set in the redirector in the processes for sending the requests to the Web container | Detecting failures in the communication path or the Web container |
4 | Timeout set in the redirector for receiving data from the Web container | Detecting failures in business processing (such as infinite loop and deadlock) of the J2EE server or the communication path |
5 | Timeout set in the Web container for receiving data from the redirector | Detecting failures in the communication path or the Web server |
6 | Timeout set in the Web application for the method execution time | Detecting failures in business processing (such as infinite loop and deadlock) of the J2EE server |
7 | Timeout set in the EJB client for remotely invoking the Enterprise Bean (RMI-IIOP communication) and for invoking the JNDI Naming Service | Detecting failures in business processing (such as infinite loop and deadlocks) of the J2EE server or the communication path |
8# | Timeout set up in the EJB client for invoking the Enterprise Bean from CTM | Detecting failures in business processing (such as infinite loop and deadlocks) of the J2EE server or the communication path |
9 | Timeout set in the EJB for the method execution time | Detecting failures in business processing (such as infinite loop and deadlock) of the J2EE server |
10 | Timeout set in the EJB container for the database transaction | Detecting failures in database server (such as server is down or a deadlock has occurred) or preventing the extended exclusive use of the resources |
11 | Timeout set in DB Connector for acquiring a connection | Detecting errors when a connection is acquired (communication path errors or resource depletion) |
12 | Database timeout | Detecting failures in database server (such as server is down or a deadlock has occurred) or preventing the extended exclusive use of the resources |
13 | Timeout set in the Web container for sending a response to the redirector | Detecting failures in the communication path or the redirector |
The basic guidelines for setting the above timeouts are as follows:
The points 1 to 13 can be divided into the following three categories depending on their location in the system:
For details about the settings of each point, see 8.6.8 Tuning parameters for setting the timeout.
Point | Default value |
---|---|
1 | 300 seconds |
2 | 30 seconds |
3 | 100 seconds |
4 | 3,600 seconds |
5 | 600 seconds |
6 | Not set . No timeout. |
7 | Not set. Continues to wait for response. |
8 | A value same as point 7 is automatically inherited and set up when the Enterprise Bean is invoked. |
9 | Not set. No timeout. |
10 | 180 seconds |
11 | Differs according to the location of the timeout setup.
|
12 | Differs according to the type of database and the location of timeout setting.
|
13 | 600 seconds |