Apusic应用服务器提供事务服务,提供完全遵循JTA规范的实现,可以通过编辑在Apusic应用服务器域主目录中config子目录下的apusic.conf配置文件中的相关配置段,对事务服务的超时时间进行设置。
在配置事务服务前,应该熟悉JavaEE™规范中可参与到事务中的组件,如EJB,JMS,JDBC等。
apusic.conf配置文件中缺省的事务服务配置段如下:
... <SERVICE CLASS="com.apusic.transaction.TransactionService" > <ATTRIBUTE NAME="DefaultTimeout" VALUE="600"/> <ATTRIBUTE NAME="EnableLog" VALUE="False"/> <ATTRIBUTE NAME="RetryTimeout" VALUE="600"/> <ATTRIBUTE NAME="RetryInterval" VALUE="60"/> <ATTRIBUTE NAME="HeuristicDecision" VALUE="rollback"/> </SERVICE> ...
下表简述Apusic应用服务器中的事务服务的各项可配置属性:
属性 | 描述 | 属性值 | 缺省值 |
---|---|---|---|
DefaultTimeout | 从开始一个事务到系统强制其回滚的时间,以秒为单位 | 整型值 | 600 |
EnableLog | 打开事务日志。只有打开事务日志,才会启用分布式事务恢复功能 | 布尔值 | 默认为False(关闭事务日志) |
RetryTimeout | 发生通讯故障时重试的时间,以秒为单位 | 整型值 | 600(0表示会永远重试) |
RetryInterval | 发生通讯故障时重试的时间间隔,以秒为单位 | 整型值 | 60 |
HeuristicDecision | 作为事务从属Coordinator的应用服务器如果在RetryTimeout指定的时间内无法从其上级Coordinator处获得事务完成方向的指示,会自行决定应该提交还是回滚。取值必须为“commit”或“rollback”两者之一。 | 字符串 | rollback |
TxServerID | 事务管理器的ID,用于标识事务管理器的一个字符串 | 字符串 | 默认无需设置 |
各参数具体介绍请查看第 47.4.3 节 “分布式事务恢复”