调整应用程序服务器
产品包含必须相应调整以支持您的端到端电子商务应用程序的定制需要的相关组件。
关于此任务
这组相互相关的组件称为排队网络。排队网络有助于系统实现最大吞吐量,同时保持整个系统稳定。
以下步骤描述了各种可改进应用程序服务器性能的调整任务。您可选择实现这些应用程序服务器的任何设置。您可以按任意顺序执行这些步骤。
过程
- 作为提高应用程序服务器的性能的起始点,运行 applyPerfTuningTemplate.py。
可以使用基于 python 的调整脚本 applyPerfTuningTemplate.py 以及它的某个模板文件来应用建议的性能调整设置。此脚本和这些模板文件位于 WAS_HOME/bin 目录。
- 调整对象请求代理。 对象请求代理 (ORB) 使用因特网 ORB 间协议 (IIOP) 来管理客户机与服务器之间的交互。它支持分布式网络环境中的客户机请求以及从服务器接收到的响应。您可以使用下列参数来调整 ORB:
- 设置按引用传递 (com.ibm.CORBA.iiop.noLocalCopies),如有关对象请求代理服务设置的信息中所述。
设置最小连接高速缓存 (com.ibm.CORBA.MaxOpenConnections),如有关对象请求代理服务设置的信息中所述。
设置最大大小,如有关线程池设置的主题中所述。
设置 com.ibm.CORBA.ServerSocketQueueDepth,如有关对象请求代理定制属性的信息中所述。
- 设置 com.ibm.CORBA.FragmentSize,如有关对象请求代理定制属性的信息中所述。
有关使用这些参数来调整 ORB 的技巧,请参阅有关对象请求代理调整指南的信息。
- 调整 XML 解析器定义。
- 描述:通过在 ${app_server_root}/jre/lib 目录中的 jaxp.properties 和 xerces.properties 文件中添加 XML 解析器定义,提高服务器的启动速度。在提供新版本的 Xerces 时,可能会更改 XMLParserConfiguration 值。
- 如何查看或设置:在两个文件中都插入下列行:
您也可以查阅 JDK 安装随附的 jre/lib/jaxp.properties 和 jre/lib/xerces.properties 文件。这些样本文件总是包含建议的设置:javax.xml.parsers.SAXParserFactory=org.apache.xerces.jaxp.SAXParserFactoryImpl javax.xml.parsers.DocumentBuildFactory=org.apache.xerces.jaxp. DocumentBuilderFactoryImpl org.apache.xerces.xni.parser.XMLParserConfiguration=org.apache.xerces.parsers. XIncludeAwareParserConfiguration
- 缺省值:无
- 建议值:无
- 调整动态高速缓存服务。
通过使用动态高速缓存服务,可以提高性能。有关使用动态高速缓存服务以及该服务对应用程序服务器性能有何影响的信息,请参阅有关使用动态高速缓存服务器来提高性能的信息。
调整 Web 容器。 产品 Web 容器管理对 servlet、JavaServer Pages 和 Web Service 的所有 HTTP 请求。请求流经传输链到达 Web 容器。传输链定义了 Web 容器性能的重要调整参数。产品在侦听 HTTP 请求时使用的每个 TCP 端口都有传输链。例如,在 Web 容器入站通道链中定义了缺省 HTTP 端口 9080。使用下列参数来调整 Web 容器:
- HTTP 请求由服务器线程池处理。您可以配置 Web 容器的最小线程池大小和最大线程池大小以提高性能。通常,对于每个服务器 CPU,5 至 10 个线程将提供最佳吞吐量。配置的线程数并不代表产品可以同时处理的请求数。当所有线程都处于忙碌状态时,请求将在传输链中排队。要指定线程池设置:
- 单击服务器 > 服务器类型 > WebSphere 应用程序服务器 > server_name Web 容器设置 > Web 容器 > Web 容器传输链。
- 选择用于为请求提供服务的正常入站链。此链通常称为 WCInboundDefault 并侦听端口 9080。
- 单击 TCP 入站通道 (TCP_2)。
- 在“相关项”下,设置线程池。
- 选择 Web 容器。
- 输入最小大小值和最大大小值。
- HTTP 1.1 协议提供了“保持活动”功能以使 HTTP 客户机与服务器之间的
TCP 连接在各个请求之间保持处于打开状态。缺省情况下,在达到特定请求数目或经过超时时间段后,产品将关闭给定的客户机连接。关闭连接后,如果客户机发出另一个请求,那么会重新创建连接。过早关闭连接会使性能下降。请输入最大保持活动持久请求数值,以指定单个 HTTP 连接所允许的请求数。输入持久超时值以指定 HTTP 传输通道允许套接字在请求之间保持空闲状态的时间量(以秒计)。要指定最大持久请求数和持久超时值:
- 单击服务器 > 服务器类型 > WebSphere 应用程序服务器 > server_name。 然后,在“容器设置”部分中,单击 Web 容器 > Web 容器传输链。
- 选择用于为请求提供服务的正常入站链。此链通常称为 WCInboundDefault 并侦听端口 9080。
- 单击 HTTP 入站通道 (HTTP_2)。
- 输入最大持久请求数和持久超时的值。
- HTTP 请求由服务器线程池处理。您可以配置 Web 容器的最小线程池大小和最大线程池大小以提高性能。通常,对于每个服务器 CPU,5 至 10 个线程将提供最佳吞吐量。配置的线程数并不代表产品可以同时处理的请求数。当所有线程都处于忙碌状态时,请求将在传输链中排队。要指定线程池设置:
- 调整 EJB 容器。 当创建应用程序服务器时,将自动创建 Enterprise JavaBeans (EJB)
容器。部署 EJB 容器后,可使用下列参数来进行调整以提高性能。
- 设置清除时间间隔和高速缓存大小。有关更多信息,请参阅“EJB 高速缓存设置”主题。
- 将 CMP 企业 bean 分成多个企业 bean 模块。有关更多信息,请参阅“组装 EJB 模块”主题。
有关进一步的信息,请参阅“EJB 方法调用排队”主题。
- 调整会话管理。
完成安装后,会话管理的缺省设置对于性能来说是最理想的。
- 调整数据源和相关连接池。 数据源用于访问数据库中的数据;它与该数据库的连接池相关联。
- 复审“连接池”主题,以了解连接池中的物理连接数如何改变性能。
使用“数据访问调整参数”主题作为对性能产生最大影响的数据源和连接池属性的参考。
- 调整 URL 调用高速缓存。
每个 JavaServer Page 都是独特的 URL。如果同时使用 50 个以上的独特 URL,请增大对 invocationCacheSize JVM 定制属性指定的值。此属性控制 URL 调用高速缓存的大小。
更改恢复日志服务尝试压缩应用程序组件所使用的日志流的频率。
如果事务服务是唯一一个使用日志流的应用程序组件,那么可以将该服务的 RLS_LOGSTREAM_COMPRESS_INTERVAL 定制属性设为大于缺省值的值。如果未将任何组件配置为使用日志流,那么可以将此属性设为 0(零)以禁用此功能。
子主题
使用预定义的调整模板来调整应用程序服务器
可以使用基于 Python 的调整脚本 applyPerfTuningTemplate.py 以及它的某个模板文件,将预定义的性能调整模板应用于应用程序服务器或集群。基于属性的模板文件位于 WAS_HOME\scriptLibraries\perfTuning\V70 目录中。脚本文件的路径是 wsadmin -f <WAS_HOME>\bin\applyPerfTuningTemplate.py。Web Service 客户机到 Web 容器的优化通信
位于同一个应用程序服务器进程中的 Web Service 客户机应用程序与 Web 容器之间存在优化通信路径,用以提高性能。来自 Web Service 客户机的请求(通常使用网络连接来发送至 Web 容器),会使用优化本地路径来直接传递至 Web 容器。可以使用本地路径,因为 Web Service 客户机应用程序与 Web 容器正在同一个进程中运行。
相关任务:
相关参考:


http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tprf_tuneappserv
文件名:tprf_tuneappserv.html