在应用程序级别扩展 DB2 数据源定义
扩展 DB2® 数据源的数据源定义(此定义包含非核心属性或定制属性),以便在使用 DB2 通用 JDBC JDBC 驱动程序 或 DB2 Using IBM® JCC JDBC 驱动程序时进一步提高应用程序灵活性。此能力有时被称为异构合用。通过使用此功能,可以对应用程序服务器中的 DB2 数据源配置一组核心数据源属性,并让各个应用程序定义任何需要特定于应用程序的定制属性或非核心属性(例如 currentSchema 或 clientApplicationInformation)。您也可以使用这些扩展定义来覆盖已经为数据源定义的任何非核心或定制属性。另外,此功能在连接到同一数据源的资源之间使用一个连接池,从而减少应用程序服务器所使用的物理连接数。
开始之前
- DB2 Universal JDBC Driver(V4.3.81 或更高版本)
- DB2 Using IBM JCC 驱动程序(V3.53.65 或更高版本)
关于此任务
并且,应用程序可以共享应用程序服务器中的同一个连接池,即使每个应用程序都有自己的一组独特数据源属性亦如此。在应用程序服务器中可能只定义了一个数据源,因此只有一个连接池,但对于各个应用程序而言,似乎存在多个已定义的数据源。这将产生以下结果:
- 降低了应用程序服务器的内存耗用量。数据源定义与一个连接池相对应,因此与对应于自己的连接池的数据源定义相比,内存中的对象较少。
- 减少了对数据源打开的连接数,这可以降低数据源的内存耗用量。应用程序服务器可以通过提供一个与多个数据源相对应的连接池来减少空闲连接数,从而更高效地使用连接。
- 在应用程序使用“获取/使用/关闭”连接模式时,能够在某些 DB2 方案中避免执行两阶段落实 (XA) 事务。在同一个事务中,应用程序服务器能够在具有同一组核心属性的不同资源引用之间共享连接,即使这些资源引用具有不同的非核心属性亦如此。此行为可以在连接共享导致应用程序服务器使用一个且只使用一个物理连接时避免进行两阶段落实处理。