Recommendations for Application Servers of type NSH_Proxy
This topic provides general recommendations for sizing and optimizing Application Servers defined as type NSH_Proxy (or as type ALL, which includes the NSH_Proxy functionality). The term NSH proxy server refers to Application Servers of type NSH_Proxy.
The following tables presents the various NSH-proxy–related parameters that you should configure through the Application Server Administration Console (blasadmin utility) for any Application Server of type NSH_Proxy or ALL. After changing any of these settings, remember to restart the Application Server to pick up the changes made through blasadmin.
The settings on this page are divided into the following categories:
Recommendation
BMC recommends the use of NSH proxy servers for security.
Client connection service and thread pool settings
For the best performance, configure the NSH proxy server for the number of concurrent NSH connections that you expect it to manage. Some jobs, such as File Deploy Jobs, occasionally require as many as three simultaneous NSH connections per executing work item. User-written NSH script jobs might require more simultaneous NSH connections, depending on the actions that the scripts are performing.
Component | Parameter | Description and recommended value |
---|---|---|
|
| Maximum number of NSH connections to the NSH Proxy Server. Set this value to the maximum number of concurrent NSH connections that you want the NSH proxy server to manage. By default this value is set to 50. Note: For releases earlier than 8.2, the default value is set to 20. If you upgrade from a release earlier than 8.2, the value set for that release persists after the upgrade. If you did not set a a value during the previous release, the default value from the previous release persists after the upgrade. |
|
| Maximum number of NSH proxy threads that are available to process Network Shell client connections. Each proxy thread can accommodate multiple Network Shell client connections by switching between connections when there is no traffic on a particular connection. Increasing the maximum number of proxy threads can improve performance for Network Shell users. However, using an excessive number of threads can potentially degrade the performance of a Network Shell proxy server. By default this value is set to 15. Note: For releases earlier than 8.2, the default value is set to 3. If you upgrade from a release earlier than 8.2, the value set for that release persists after the upgrade. If you did not set a a value during the previous release, the default value from the previous release persists after the upgrade. The value of this parameter can be significantly less than For example, if |
AppServer | NshProxyMaxThreadIdleTime | Maximum idle time for thread processing. This setting enables you to adjust the performance of proxy threads that process Network Shell client connections. Use one of the following values:
By default, this parameter is set to 500 milliseconds. |
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. |
AppServer | IdleNshProxyPruneTime | Maximum idle time (in minutes) for a connection with a Network Shell client. When there is no traffic over the connection between a Network Shell client and its proxy for this period of time, the connection is automatically closed. By default, this value is set to 120 minutes. |
| NshProxySocketConnectTimeout | The number of seconds to continue trying to obtain a Network Shell proxy socket connection to the Application Server, before timing out. By default, this value is set to 60 seconds. |
| NshProxySocketOperationTimeout | The number of seconds to allow for NSH proxy socket reads before the socket times out. By default, this value is set to 7200 seconds. |
Database connection settings
The number of available database connections can affect Job Server performance. The following parameters are recommended for database connections:
Component | Parameter | Description and recommended value |
---|---|---|
|
| 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. |
Database | MaxClientConnections | Maximum connections in the pool for client connections For an Application Server configured to act exclusively as an NSH proxy server, this value should be the same as MaxNshProxyThreads . For an Application Server configured to act as both a configuration server and an NSH proxy server, this value should be the sum of the values for MaxWorkerThreads and MaxNshProxyThreads . |
| 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. |
|
| 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
The following Application Server configuration parameters are recommended for NSH proxy servers using a load balancer. 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 a custom ProxyServiceURL, 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:
|
|
| Set this parameter to contain the URL for the client's view of the load balancer for the NSH proxy servers. |
Comments