seata file.conf 文件

transport {
  # tcp, unix-domain-socket
  # 这里指定了Seata使用的传输类型为TCP。
  type = "TCP"
  #NIO, NATIVE
  #服务器使用NIO(非阻塞IO)模式。另一种可选的模式是NATIVE
  server = "NIO"
  #enable heartbeat
  #启用心跳机制,用于检测连接的健康状态。
  heartbeat = true
  # the tm client batch send request enable
  #事务管理器(TM)客户端是否启用批量发送请求。这里设置为false,表示不启用。
  enableTmClientBatchSendRequest = false
  # the rm client batch send request enable
  #资源管理器(RM)客户端是否启用批量发送请求。这里设置为true,表示启用。
  enableRmClientBatchSendRequest = true
   # the rm client rpc request timeout
  #rpcRmRequestTimeout = 2000
  # the tm client rpc request timeout
  事务管理器(TM)的RPC请求超时时间,这里设置为30秒。
  rpcTmRequestTimeout = 30000
  # the rm client rpc request timeout
  #资源管理器(RM)的RPC请求超时时间,这里设置为15秒。
  rpcRmRequestTimeout = 15000
  #thread factory for netty
  threadFactory {
    #Netty Boss线程的前缀名。
    bossThreadPrefix = "NettyBoss"
    #Netty Worker线程的前缀名。
    workerThreadPrefix = "NettyServerNIOWorker"
    #服务器执行线程的前缀名。
    serverExecutorThread-prefix = "NettyServerBizHandler"
    #是否共享Boss和Worker线程,这里设置为false,表示不共享。
    shareBossWorker = false
    #客户端选择器线程的前缀名。
    clientSelectorThreadPrefix = "NettyClientSelector"
    #客户端选择器线程的数量,这里设置为1。
    clientSelectorThreadSize = 1
    #客户端工作线程的前缀名。
    clientWorkerThreadPrefix = "NettyClientWorkerThread"
    #Netty Boss线程的数量,这里设置为1。
    # netty boss thread size
    bossThreadSize = 1
    #auto default pin or 8
    #Netty Worker线程的数量,这里设置为"default",意味着使用Netty的默认设置。
    workerThreadSize = "default"
  }
  shutdown {
    # when destroy server, wait seconds
    #在关闭服务器时,等待的时间设置为3秒。
    wait = 3
  }
  #使用的序列化方式为"seata"。
  serialization = "seata"
  #使用的压缩方式为"none",表示不进行压缩。
  compressor = "none"
}

service {
  #transaction service group mapping
  #这一行定义了一个事务服务组(transaction service group)的映射。my_test_tx_group是一个自定义的事务组名称,它映射到default组。Seata支持将不同的业务或系统映射到不同的事务组中,以实现更细粒度的控制和管理。在这个例子中,my_test_tx_group的所有事务请求都会被路由到default组进行处理。
  vgroupMapping.my_test_tx_group = "default"
  #only support when registry.type=file, please dont set multiple addresses
  #这一行配置了default组的服务地址列表。这里只提供了一个地址127.0.0.1:8091,表示Seata服务运行在本地的8091端口上。当客户端发送请求到default组时,它会尝试连接到这个地址。注意,通常在生产环境中,你会配置多个服务地址以实现高可用性和负载均衡。
  default.grouplist = "127.0.0.1:8091"
  #degrade, current not support
  #这一行设置降级功能的启用状态为false。降级通常用于在服务不可用时提供简化的功能或回退策略,但当前Seata可能还不支持这一功能,因此它被设置为禁用状态。
  enableDegrade = false
  #disable seata
  #这一行设置全局事务的禁用状态为false。全局事务是Seata的核心功能之一,用于保证分布式系统中的事务一致性。将此值设置为false意味着启用全局事务功能。如果设置为true,则Seata将不会处理全局事务,这通常用于在调试或特定场景下禁用分布式事务。
  disableGlobalTransaction = false
}

#这段配置是Seata中关于客户端的配置,包含了资源管理器(RM)、事务管理器(TM)、撤销日志(Undo Log)、负载均衡(Load Balance)和特定于TCC(Try-Confirm-Cancel)模式的配置。
client {
  rm {
    #异步提交缓冲区的限制大小,设置为10000。
    asyncCommitBufferLimit = 10000
    lock {
      #锁重试间隔,设置为10毫秒。
      retryInterval = 10
      #锁重试次数,设置为30次。
      retryTimes = 30
      #当冲突时,分支事务回滚的重试策略,设置为启用。
      retryPolicyBranchRollbackOnConflict = true
    }
    #报告重试次数,设置为5次。
    reportRetryCount = 5
    #是否启用表元数据检查,设置为禁用。
    tableMetaCheckEnable = false
    #表元数据检查间隔,设置为60000毫秒(即1分钟)。
    tableMetaCheckerInterval = 60000
    #是否启用成功报告,设置为禁用。
    reportSuccessEnable = false
    #Saga分支注册是否启用,设置为禁用。
    sagaBranchRegisterEnable = false
    #Saga JSON解析器类型,设置为"fastjson"。
    sagaJsonParser = "fastjson"
    #Saga重试和补偿持久化模式更新,均设置为禁用。
    sagaRetryPersistModeUpdate = false
    #TCC动作拦截器顺序,设置为一个特定的优先级值。
    sagaCompensatePersistModeUpdate = false
    
    tccActionInterceptorOrder = -2147482648 #Ordered.HIGHEST_PRECEDENCE + 1000
    SQL解析器类型,设置为"druid"。
    sqlParserType = "druid"
    #XA分支执行超时和连接两阶段保持超时,分别设置为60000毫秒(即1分钟)和10000毫秒(即10秒)。
    branchExecutionTimeoutXA = 60000
    connectionTwoPhaseHoldTimeoutXA = 10000
  }
  tm {
    #提交和回滚重试次数,均设置为5次。
    commitRetryCount = 5
    rollbackRetryCount = 5
    #默认全局事务超时时间,设置为60000毫秒(即1分钟)。
    defaultGlobalTransactionTimeout = 60000
    #降级检查相关的配置,包括是否启用降级检查、检查周期和允许的检查次数。
    degradeCheck = false
    degradeCheckPeriod = 2000
    degradeCheckAllowTimes = 10
    #拦截器顺序,设置为一个特定的优先级值。
    interceptorOrder = -2147482648 #Ordered.HIGHEST_PRECEDENCE + 1000
  }
  undo {
    #数据校验是否启用,设置为启用。
    dataValidation = true
    #是否只关心更新的列,设置为启用。
    onlyCareUpdateColumns = true
    #日志序列化类型,设置为"jackson"。
    logSerialization = "jackson"
    #撤销日志表名,设置为"undo_log"。
    logTable = "undo_log"
    compress {
      #压缩相关的配置,包括是否启用压缩、压缩类型以及压缩阈值。
      enable = true
      # allow zip, gzip, deflater, lz4, bzip2, zstd default is zip
      type = zip
      # if rollback info size > threshold, then will be compress
      # allow k m g t
      threshold = 64k
    }
  }
  loadBalance {
      #负载均衡类型,设置为"XID"。
      type = "XID"
      #虚拟节点数,设置为10。
      virtualNodes = 10
  }
}
log {
  #异常率,设置为100。
  exceptionRate = 100
}
tcc {
  fence {
    # tcc fence log table name
    #TCC fence日志表名,设置为"tcc_fence_log"。
    logTableName = tcc_fence_log
    #TCC fence日志清理周期,设置为1小时。
    # tcc fence log clean period
    cleanPeriod = 1h
  }
}

如上是registry.conf中的config的type为file配置的时候的文件形式配置,如果你要是指定registry.conf中的config的type为nacos,那么可以转为为如下类似的配置,配到nacos中。

# Seata配置文件  
  
# transport 配置  
transport.type = TCP  
transport.server = NIO  
transport.heartbeat = true  
transport.enableClientBatchSendRequest = true  
transport.threadFactory.bossThreadPrefix = NettyBoss  
transport.threadFactory.workerThreadPrefix = NettyServerNIOWorker  
transport.threadFactory.serverExecutorThreadPrefix = NettyServerBizHandler  
transport.threadFactory.shareBossWorker = false  
transport.serialization = seata  
transport.compressor = none  
  
# service 配置  
service.vgroupMapping.my_test_tx_group = "default"  
service.default.grouplist = "127.0.0.1:8088"  
service.enableDegrade = false  
service.disableGlobalTransaction = false  
  
# client 配置  
client.rm.asyncCommitBufferLimit = 10000  
client.rm.lock.retryInterval = 10  
client.rm.lock.retryTimes = 30  
client.rm.lock.retryPolicyBranchRollbackOnConflict = true  
client.rm.reportRetryCount = 5  
client.rm.tableMetaCheckEnable = false  
client.rm.tableMetaCheckerInterval = 60000  
client.rm.reportSuccessEnable = false  
client.rm.sagaBranchRegisterEnable = false  
client.rm.sagaJsonParser = "fastjson"  
client.rm.tccActionInterceptorOrder = -2147482648  
client.rm.sqlParserType = "druid"  
client.tm.commitRetryCount = 5  
client.tm.rollbackRetryCount = 5  
client.tm.defaultGlobalTransactionTimeout = 60000  
client.tm.degradeCheck = false  
client.tm.degradeCheckPeriod = 2000  
client.tm.degradeCheckAllowTimes = 10  
client.tm.interceptorOrder = -2147482648  
client.undo.dataValidation = true  
client.undo.onlyCareUpdateColumns = true  
client.undo.logSerialization = "jackson"  
client.undo.logTable = "undo_log"  
client.undo.compress.enable = true  
client.undo.compress.type = "zip"  
client.undo.compress.threshold = 64k  
client.loadBalance.type = "random"  
client.loadBalance.virtualNodes = 10  

log.exceptionRate = 100
  
# tcc 配置  
tcc.fence.logTableName = tcc_fence_log  
tcc.fence.cleanPeriod = 1h

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值