Recommendations for Application Servers of type Configuration
This topic provides general recommendations for sizing Application Servers defined as type Configuration. The term configuration server refers to Application Servers of type Configuration.
Estimating client connections
Configuration servers handle user interface (UI) connections. The sizing settings for configuration servers should be based on the anticipated number of client connections to the server, which is the total of the number of client connections expected from UI clients (RCP) and from BLCLI clients.
The number of client connections opened by a UI client varies over time and depends on the operations in which the user is engaged at any given moment. As an initial estimate, BMC recommends a planning figure of 2.5 client connections for each concurrent UI user.
The BLCLI client uses exactly one client connection for its execution, and it is usually more short-lived than an interactive user UI session. Thus, the peak demand estimate for client connections for a configuration server is:
2.5 × (number of simultaneous UI users) + (number of simultaneous BLCLI commands)
If you establish multiple configuration servers with a load balancer, you can divide the total load for client connections across the number of configuration servers that you establish.
For example, if you want to scale to 150 to 220 concurrent users and allocate 50 connections for BLCLI commands, set MaxClientContexts
to 600 (220 × 2.5 + 50
). If you have two load balanced configuration servers, you can distribute the 600 client contexts between the two servers (300 each).
Client connection service and thread pool settings
The client connection service is responsible for managing connections from client processes in configuration servers. The client connection service maintains a pool of threads for servicing client requests.
The following table describes the parameters that most strongly affect the performance of the client connection service. In most cases, you do not need to change these parameters from their default values.
Component | Parameter | Description and recommended value |
---|---|---|
|
| Number of maximum client connections to the Application Server |
|
| Number of client connection worker threads |
AppServer | MaxHeapSize | Maximum heap size for this Application Server. Recommended values:
|
|
| These connections are used for communication between Application Servers. In environments with many Application Server instances, this setting may need to be increased from the default of 20. |
|
| These settings specify a range of available ports used for communication between Application Servers. The default range provides for 50 ports (BasePort+50-BasePort+9899) which is sufficient for most environments. |
Database connection settings
For best configuration server (and UI) performance, BMC recommends allowing the pool of database connections for client service threads to grow up to twice the number of client connection service threads, as described in the following table:
Component | Parameter | Description and recommended value |
---|---|---|
|
| Maximum connections in the pool for client connections |
| MinClientConnections | Controls the minimum number of database connections created on startup for the Client Connection pool. Because connections are created on demand, this has no impact on performance. The default is 0. |
Database | MaxGeneralConnections | Maximum connections in the pool for the general thread group.
|
|
| Controls the minimum number of database connections created on startup for the General Connection pool. Because connections are created on demand, this has no impact on performance. |
|
| Maximum idle time, in seconds, for database connections. The Application Server closes database connections that are idle longer than the specified timeout. If there is a network device between the Application Server and database with a lower idle timeout, then this setting should be adjusted. The default is 600 seconds (10 minutes). |
|
| Controls logging of long running database queries. Leave at 0 to disable this functionality. |
|
| Number of rows fetched simultaneously from the database. The default is 100 rows. |
|
| Number of seconds that connections are idle before being tested. The default is 600 seconds (10 minutes). |
Load balancer environments
When a load balancer is used to share the load across multiple configuration servers, the following adjustments to the configuration server's parameter settings are recommended. For more information, see Considerations for load balancing.
Component | Parameter | Description and recommended value |
---|---|---|
|
| If set to true, the Application Server verifies that its own address appears in the list of request URLs encoded in the session credential. For Application Servers in a load balancer environment or otherwise using an alternate URL besides the appserver hostname, take into account the type of traffic that you are load balancing:
|
|
| Whether to enable (a value of In a load balancer environment, use the following guidelines to set the value for this parameter:
|
|
| Application service URLs distributed in the session credentials issued by the Authentication Service |
Comments
Log in or register to comment.