第 12 章 配置 Data Grid Server Datasources
创建受管数据源,以优化数据库连接的连接池和性能。
您可以将数据库连接属性指定为 JDBC 缓存存储配置的一部分。但是,您必须为每个缓存定义执行此操作,通过创建多个不同的连接池来重复配置并浪费资源。
通过使用共享、管理的数据源,您可以集中连接配置和池,以便更有效地使用。
12.1. JDBC 缓存存储的数据源配置 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
数据源的数据网格服务器配置由两个部分组成:
-
定义如何连接到数据库的
连接工厂。 -
定义如何池和重复利用连接的连接池。
<data-sources>
<!-- Defines a unique name for the datasource, JNDI name, and enables statistics. -->
<data-source name="ds" jndi-name="jdbc/datasource" statistics="true">
<!-- Specifies the JDBC driver that creates connections. -->
<connection-factory driver="org.database.Driver"
username="db_user"
password="secret"
url="jdbc:db://database-host:10000/dbname"
new-connection-sql="SELECT 1"
transaction-isolation="READ_COMMITTED">
<!-- Sets optional JDBC driver-specific connection properties. -->
<connection-property name="name">value</connection-property>
</connection-factory>
<!-- Defines connection pool properties. -->
<connection-pool initial-size="1"
max-size="10"
min-size="3"
background-validation="1000"
idle-removal="1"
blocking-timeout="1000"
leak-detection="10000"/>
</data-source>
</data-sources>
使用以下参数可以调整连接池:
-
initial-size: 池应拥有的初始连接数。 -
max-size:池中连接的最大数量。 -
min-size:池应保留的最小连接数。 -
blocking-timeout: 在抛出异常前等待连接时,以毫秒为单位阻止的最长时间。如果创建新连接需要很长时间,则不会抛出异常。默认为 0 表示调用将无限期等待。 -
background-validation:后台验证运行之间的时间(毫秒)。持续时间为 0 表示此功能被禁用。 -
validate-on-acquisition:在获取前,按毫秒指定的连接闲置的时间(以毫秒为单位)会被验证(用于验证)。持续时间为 0 表示此功能被禁用。 -
idle-removal: 在删除连接前必须闲置时间。 -
leak-detection:在泄漏警告前必须保持连接的时间(以毫秒为单位)。