WebSphere Application Server 数据源属性

使用此页面来设置应用程序服务器中的高级数据源属性。这些属性激活并配置应用程序服务器应用于数据源的服务,以定制应用程序服务器中的连接。这些属性不会影响数据库中的连接。

要访问此管理控制台页面,请完成下列其中一个操作途径:
语句高速缓存大小

指定每个连接可以高速缓存的语句数。在您关闭某个语句之后,应用程序服务器就会高速缓存该语句。

WebSphere® Application Server 数据源通过对活动连接中未使用的预编译语句和可调用语句进行高速缓存来优化对这些语句的处理。这两种语句类型都有助于最大程度地提高应用程序与数据存储器之间的事务性能。
  • 预编译语句是存储在 PreparedStatement 对象中的预编译 SQL 语句。应用程序服务器使用此对象来根据应用程序运行时的需要将 SQL 语句运行多次,并且值由运行时确定。
  • 可调用语句是包含存储过程调用的 SQL 语句(存储过程是一系列预编译语句,这些语句执行任务并返回结果)。此语句存储在 CallableStatement 对象中。应用程序服务器使用此对象来根据应用程序运行时的需要将存储过程运行多次,并且值由运行时确定。

如果语句高速缓存不够大,就会废弃有用的条目以便为新条目腾出空间。要确定高速缓存大小的最大值以避免任何高速缓存废弃,为每个使用特定服务器上的此数据源的应用程序添加单独预编译语句和可调用的语句数(如 SQL 字符串、并发性和滚动类型所确定的那样)。此值是服务器活动期间在给定连接上可以高速缓存的最大可能语句数。将高速缓存大小设置为该值意味着您不会再有高速缓存废弃的情况发生。通常,对于具有更多语句的应用程序应配置更大的高速缓存。

[AIX Solaris HP-UX Linux Windows] [iSeries] 还可以使用 Tivoli® Performance Viewer 将高速缓存废弃数最小化。使用代表进入客户机请求的典型个数的标准工作负载、使用固定的迭代次数并使用配置设置的标准集合。
注: 语句高速缓存越高,延迟系统资源越多。因此,如果将此数设置得过高,那么您可能会因为系统无法打开多个预编译语句而缺乏资源。

如果您不希望应用程序服务器对特定语句进行高速缓存,那么请将该语句的可合用性提示配置为 false。如果可合用性提示设置为 false,那么应用程序服务器不会对语句进行高速缓存。应用程序将在运行时指定语句的可合用性提示。

在测试应用程序中,调整语句高速缓存可使吞吐量从 10% 提高到 20%。但是,由于潜在的资源局限性,这种情况不会总是可行的。

数据类型 整型
缺省值 缺省值取决于数据库。此值通常为 10。对于没有相应的最新修订的 Informix® V7.3、V9.2、V9.3 和 V9.4,缺省值一定是 0。缺省值为 0 表示没有高速缓存语句。
启用多线程的访问检测

如果选择了此选项,那么应用程序服务器将通过多线程来检测是否存在访问。

启用数据库重新认证

指示将不存在与从应用程序服务器的连接池中检索到的连接精确匹配(即,连接池搜索条件不包含用户名和密码)。而是会在 DataStoreHelper 类的 doConnectionSetupPerTransaction() 中对连接重新进行认证。但是,应用程序服务器在运行时未提供重新认证连接实现。因此,当选中了此框时,您必须扩展 DataStoreHelper 类以提供执行重新认证的 doConnectionSetupPerTransaction() 方法的实现。如果未完成此过程,那么应用程序服务器可能会返回不可用的连接。有关更多信息,请参阅 com.ibm.websphere.rsadapter.DataStoreHelper#doConnectionSetupPerTransaction 方法的 API 文档。

通过减少打开和关闭连接的开销,连接重新认证可帮助改进性能,特别是对于频繁使用不同的用户名和密码来请求连接的应用程序。
避免故障: 如果您选择 TrustedConnectionMapping 作为映射配置别名,那么不能启用数据库重新认证。gotcha
启用 JMS 一阶段优化支持

如果选择了此选项,那么应用程序服务器将允许 Java™ 消息传递服务 (JMS) 从此数据源中获取最佳连接。此属性可阻止 Java 数据库连接(JDBC)应用程序与容器管理的持久性 (CMP) 应用程序共享连接。

管理高速缓存的句柄

指定容器是否跟踪高速缓存的句柄。高速缓存的句柄是连接句柄,应用程序组件在事务和方法边界间使这些句柄保持活动状态。可以使用此属性来调试连接问题,但跟踪句柄会导致运行时期间产生巨大的性能开销。

如果在管理控制台中选择了管理高速缓存的句柄属性,然后又取消选择此属性,那么对于应用程序服务器 V7.0 中的资源,此字段将不再可视。仅当在 resources.xml 文件中将 manageCachedHandles 属性设置为 true 时才会显示此字段。要使此字段可用,可在 resources.xml 文件中将 manageCachedHandles 条目的值从 false 更改为 true,或者在 wsadmin 工具中输入以下 Jython 命令:
AdminConfig.modify(myDataSourceVariable, '[[manageCachedHandles "true"]]')
支持的配置: 对于在应用程序服务器 V6.x 中运行的任何资源,管理高速缓存的句柄 属性始终都将可视。例如,如果有一个节点处于 V6.1 级别,那么 resources.xml 文件中的条目将不会影响此字段在管理控制台中的显示方式。sptcfg
如果要使用另一种方法来调试问题,那么可使用多线程和跨组件诊断警报来检测 Java 连接体系结构 (JCA) 编程模型中的违例。要启用这些警报,请从服务器 > 应用程序服务器 > application_server > 性能 > 性能和诊断顾问程序配置 > 性能和诊断建议配置面板中选择那些选项。这些警报将强制连接管理器管理高速缓存的句柄、检测连接条件和发送警报。
注: 要使这些警报处于活动状态,还必须从服务器 > 应用程序服务器 > application_server > 性能 > 性能和诊断顾问程序配置面板中选择启用性能和诊断顾问程序框架(运行时性能顾问程序)
记录缺少的事务上下文

指定当应用程序获取没有事务上下文的连接时,容器是否在活动日志中记录一个条目。这些是 Java Platform, Enterprise Edition(Java EE)编程模型连接要求的例外情况。

非事务性数据源
指定应用程序服务器在全局事务或本地事务中不会加入来自此数据源的连接。如果应用程序要在连接时启动本地事务,那么它们必须在连接时显式调用 setAutoCommit(false),并且它们必须落实或回滚它们启动的事务。
避免故障: 只有在很少情况下才会将此属性设置为 true,但是 Java 持久性 API(JPA)既需要 JTA 数据源也需要非 JTA 数据源。gotcha
使用 WebSphere Application Server 异常检查模型

指定应用程序服务器使用在数据存储辅助控件中定义的错误映射工具来找出错误。应用程序服务器不会使用在数据存储辅助控件的错误映射中定义的异常来替换由 JDBC 驱动程序抛出的异常。

使用 WebSphere Application Server 异常映射模型

指定应用程序服务器使用在数据存储辅助控件中定义的错误映射工具来找出错误,并且应用程序服务器将使用在数据存储辅助控件的错误映射中定义的异常来替换由 JDBC 驱动程序抛出的异常。

支持的配置: 此错误检测模型对 JDBC V3.0 和较早版本起作用。sptcfg
验证新连接

指定连接管理器是否测试与数据库新建的连接。

重试次数

指定第一次预测试操作失败后重试数据库初始连接的次数。

重试时间间隔

如果选择验证新连接,那么此选项指定在初始连接尝试失败后,应用程序服务器再次尝试进行连接之前要等待的时间长度(以秒计)。

验证现有的合用连接

指定连接管理器在将合用的连接返回给应用程序之前是否测试这些连接的有效性。

重试时间间隔

如果选择预测试现有的合用连接时,此选项指定分配给 JDBC 驱动程序验证连接的时间长度(以秒计)。

通过 JDBC 驱动程序来验证

指定应用程序服务器将使用 JDBC 驱动程序来验证连接。JDBC 提供程序必须支持 JDBC4.0 或更高版本才能使用此选项。

避免故障: 对于 Oracle 数据源,仅在 validateNewConnectionTimeout 属性添加至 WebSphere Application Server 数据源属性的定制属性之后,通过 JDBC 驱动程序来验证才会在管理控制台上显示。validateNewConnectionTimeout 属性用于 JDBC 4.0 驱动程序验证,可使用管理控制台来指定。gotcha
超时
指定测试与数据库的连接(新建连接或应用程序服务器合用的连接)的超时(以秒计)。如果在验证前该超时到期,那么将认为该连接不可用。如果配置了重试,那么该超时的完整值适用于每次重试。值 0 表示 JDBC 驱动程序在执行验证尝试时不会使用超时。
支持的配置: 此选项仅可用于符合 JDBC 4.0 的 JDBC 驱动程序。sptcfg
通过 SQL 字符串来验证(建议不要使用)

指定应用程序服务器发送到数据库以测试连接的 SQL 语句。请使用可能对性能影响较小的查询。

对使用异构池的获取/使用/关闭/连接模式进行优化

指定应用程序服务器将使用获取/使用/关闭/连接模式。这允许应用程序服务器的连接池共享同一事务中的连接。此优化模式允许在事务期间共享一个连接,甚至连接使用不同的连接属性时也是如此。

异构合用功能允许您扩展数据源定义,以便您可以为数据源指定不同的定制属性或者允许应用程序覆盖该数据源的非核心属性。

支持的配置: 此字段仅可用于 DB2® 数据源。sptcfg
客户机重新路由的重试时间间隔

指定两次重试自动客户机重新路由之间相隔的时间(以秒计)。

支持的配置: 此字段仅可用于 DB2 数据源。sptcfg
客户机重新路由的最大重试次数

指定在与服务器的主连接断开时“自动客户机重新路由”功能尝试的最大重试连接次数。仅当设置了客户机重新路由的重试时间间隔时才使用此属性。

支持的配置: 此字段仅可用于 DB2 数据源。sptcfg
备用服务器名称
指定 DB2 服务器的备用服务器名称列表。如果指定了多个备用服务器名称,那么必须用逗号分隔这些名称。例如:
host1,host2
支持的配置: 此字段仅可用于 DB2 数据源。sptcfg
备用端口号
指定 DB2 服务器的备用服务器端口列表。如果指定了多个备用服务器端口,那么必须用逗号分隔这些端口。例如:
5000,50001
支持的配置: 此字段仅可用于 DB2 数据源。sptcfg
客户机重新路由服务器列表 JNDI 名称

指定用来将 DB2 客户机重新路由服务器列表绑定至 JNDI 名称空间的 JNDI 名称。当内存中尚不存在备用服务器信息时,DB2 数据库服务器将使用此名称来查询备用服务器名称列表。类型 2 数据源不支持此选项。

支持的配置: 此字段仅可用于 DB2 数据源。sptcfg
从 JNDI 取消绑定客户机重新路由列表

仅与测试连接配合使用。当设置为 true 时,在发出测试连接后,将取消客户机重新路由服务器列表 JNDI 名称与 JNDI 名称空间的绑定。

支持的配置: 此字段仅可用于 DB2 数据源。sptcfg



标有(在线)的链接要求访问因特网。

相关概念
相关任务
相关参考
定制属性设置


文件名: udat_jdbcdatasorprops.html