You can specify application
server options to improve the performance of SAS web applications.
This chapter provides a set of application server options that are
relevant to the SAS 9.4 middle tier. A description is provided for
each option to help you decide whether modifying a value is appropriate
for your deployment.
The following options
can be modified in the
SAS-configuration-directory\Levn\Web\WebAppServer\SASServer1_n\conf\server.xml
file:
maxThreads Option
Component:
tomcatThreadPool Executor
Default
Value: 300
Recommended
Value: 300–1024
Description: Specifies the number of threads in the executor thread
pool that is used to process incoming requests. If you have multiple instances of SAS
Web Application Server, make the same changes in each of the files for all the servers
that you want to tune.
maxPoolSize Option
Component:
Various JDBC Resources, such as sas/jdbc/SharedServices
Default
Value: 100
Recommended
Value: 50–512
Description:
Specifies the maximum number of pooled connections to the database
that is associated with a given data source reference.
Additional
Information: When the pool becomes exhausted, the SAS web applications log files (for example,
SASWIPServices9.4.log
and SASPrincipalServices9.4.log) might contain messages like the following example:
Could not get JDBC Connection;
nested exception is com.atomikos.jdbc.AtomikosSQLException:
Connection pool exhausted - try increasing 'maxPoolSize'
and/or 'borrowConnectionTimeout' on the DataSourceBean.
Also, the configuration of the database server might need to be modified, along with
this setting. For example, the default configuration of the
SAS Web Infrastructure Platform Data Server allows a maximum of 256 connections. You can change the max_connections
setting to be the same value as the sum of the maxPoolSize option value across all
data sources on all server instances. If you change the value, a system restart is
required.
For more
information about the max_connections setting, see Initial Configuration Recommendations.
The following option
can be added to the
SAS-configuration-directory\Levn\Web\WebAppServer\SASServer1_n\lib\jta.properties
file:
com.atomikos.icatch.checkpoint_interval Option
Component:
Atomikos transaction manager
Default
Value: 500
Recommended
Value: 50
Description:
Specifies the interval between transaction manager checkpoints. During
checkpoints, completed transactions are removed from the recovery
log. More frequent checkpoints can reduce the contention on the log
file across threads in high volume usage scenarios.