Composer 中的 ThingWorx 模型定义 > 数据存储 > 持久化方案提供工具 > 使用 H2 作为持久化方案提供工具
使用 H2 作为持久化方案提供工具
H2 是开源 Java SQL 数据库。H2 持久化方案提供工具支持模型和数据提供工具。
使用 H2
1. 如果您希望在 ThingWorx 中创建其他能够连接 H2 数据存储的持久化方案提供工具实例,请转至“数据存储” > “持久化方案提供工具”,然后单击“新建”
2. “常规信息”屏幕上,为持久化方案提供工具输入一个名称。
3. “持久化方案提供工具包”字段中,使用魔术拾取器选择 H2 持久化方案提供工具包。
4. 单击“配置”并配置下列设置以连接到 H2:
名称
默认值
注解
初始连接池大小
5
连接池启动时尝试获取的连接数
建立连接增量
5
确定在连接池耗尽时将获得的连接数
连接池大小上限
100
连接池在任何给定时间保持的最大连接数
连接池大小下限
5
连接池在任何给定时间保持的最小连接数
缓存语句最大数目
100
全局 PreparedStatement 缓存大小
建立连接重试次数
3
定义连接池将尝试获取新连接的次数
建立连接重试延迟
10000
连接池在两次获取连接尝试之间等待的时间 (以毫秒为单位)
退出重试超时
1000000
当连接池耗尽时,调用 getConnection 的客户端等待检入或获取连接的毫秒数
最大空闲时间
0
连接被放弃之前,连接池中存在但未使用的连接秒数零表示空闲连接从不过期。
连接最大时长
0
一旦超出这个时长 (以秒为单位),连接将会被销毁并从连接池中清除。零表示无强制的最大连接时长。
Helper 线程数目
8
通常,速度较慢的 JDBC 操作将由未持有竞争锁的 helper 线程执行。将这些操作分散到多个线程中,可以同时执行多个操作,从而显著提高性能。
未返回连接超时
0
如果应用程序获取了连接但在指定的时间段 (以秒为单位) 内未能关闭连接,则连接池会销毁连接。零表示无超时,并且应用程序会关闭其连接。
过量连接最大空闲时间
300
在超过 minPoolSize 的连接允许销毁之前,在连接池中保持空闲的秒数。零表示无强制,多余连接不会被销毁。
每个连接的缓存语句最大数目
50
您不应更改此值,因为它已调整到代码中常用语句的数目。这是 c3p0 将为单池连接缓存的已准备语句的数量。如果 maxStatements 和 maxStatementsPerConnection 均为零,将不会启用语句缓存。如果 maxStatementsPerConnection 为零,但 maxStatements 是一个非零值,将启用语句缓存,并会强制实施全局限制。否则,将不会针对单连接缓存语句数量设置限制。
如果设置,应将 maxStatementsPerConnection 设置为应用程序中经常使用的其他已准备语句数基础上再加两或三个数的形式,以便偶发语句不会强制调用常用的高速缓存语句。
虽然 maxStatements 是用于控制语句缓存的 JDBC 标准参数,但是,用户可能会发现 maxStatementsPerConnection 使用起来更为直观。
表锁定超时
10000
发生锁定超时异常之前的秒数。
5. 如有必要,请迁移实体和数据。
6. 监控和维护 H2 实现。
* 
对于 H2,platform-settings.json 文件为可选。管理员可通过此文件进行微调调整设置。