FMT 模式行锁策略

以下配置需配置在工程属性配置文件中,该文件的位置根据框架不同而有所不同:

  • SOFABoot 工程属性文件:该文件通常位于 src\main\resources\config\application.properties

  • 纯 Spring 工程属性文件:该文件通常在工程的 META-INF 目录下。

乐观锁

分布式事务的 FMT 模式行锁默认是悲观锁。如果对数据一致性要求不高,可以开启乐观锁。

您可在 SOFABoot 的配置文件 config/application.properties 中添加如下乐观锁配置:

是否开启乐观锁

com.alipay.dtx.rowlock.optimistic=xxx;

其中的 xxx 为 true 或 false,默认值为 false。

自旋锁

自旋锁即获取行锁失败之后重试,默认情况下会重试 3 次,每次重试等待 3 ms,您可以通过如下属性自定义重试策略:

  • 是否开启自旋锁

    com.alipay.dtx.rowlock.spin=xxx;

    其中的 xxx 为 true 或 false,默认值为 true。

  • 自旋锁等待时间

    com.alipay.dtx.rowlock.spin.delay=xxx;

    其中的 xxx 为等待时间,单位为 ms,默认值为 3 ms。

  • 自旋锁自旋次数

    com.alipay.dtx.rowlock.spin.times=xxx;

    其中的 xxx 为自旋次数,默认值为 3 次。