35.1. 配置事务服务

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 节 “分布式事务恢复”