Seata解析-TC端file.conf文件各配置作用总结

本文基于seata 1.3.0版本

本文主要介绍TC端的各个配置及其作用。本文将属性平铺了,这与file.conf中的属性格式不一致。

  1. transport.threadFactory.bossThreadSize:服务端Netty boss线程池线程(IO线程)个数,默认是1。
  2. transport.threadFactory.workerThreadSize:服务端Netty worker线程池线程个数,默认是CPU个数的2倍。可以设置一个整数、Auto(CPU个数*2+1)、Pin(CPU个数)、BusyPin(CPU个数+1)、Default(CPU个数*2)。
  3. transport.server:设置Netty的channel使用什么实现类,默认是NIO,可以设置的值有NIO、NATIVE。
  4. transport.heartbeat:设置是否启用超时检测,默认是true
  5. transport.threadFactory.workerThreadPrefix:设置Netty worker线程池中线程名的前缀,前缀在日志中显示,便于分析问题。
  6. store.mode:设置存储模式,也就是设置事务日志存储位置
  7. transport.type:通讯类型,是网络通讯还是同一主机进程间通讯,有两个值:TCP和unix-domain-socket。TCP表示需要通过网络通讯,后者表示使用IPC通讯,不需要经过网络。该属性和transport.server要联合使用。
  8. transport.enableClientBatchSendRequest:表示是否使用异步线程批量发送请求消息,默认是false,如果是true,那么seata使用一个异步线程池批量发送消息。
  9. transport.threadFactory.bossThreadPrefix:设置Netty boss线程池线程名的前缀。
  10. transport.threadFactory.serverExecutorThreadPrefix:暂时未用。
  11. transport.threadFactory.shareBossWorker:暂时未用。
  12. transport.threadFactory.clientSelectorThreadPrefix:RM、TM端使用,设置Netty线程池线程名的前缀。
  13. transport.threadFactory.clientSelectorThreadSize:RM、TM端使用,设置Netty线程池线程个数。
  14. transport.threadFactory.clientWorkerThreadPrefix:暂时未用。
  15. transport.shutdown.wait:关闭服务端的Netty时,暂停一段时间后再关闭,默认是3s。
  16. transport.serialization:设置发送信息的序列化格式,默认是SEATA,还可以是FST、KRYO、PROTOBUF。
  17. transport.compressor:设置发送消息的压缩格式,默认是不压缩,可选参数有:NONE、GZIP、ZIP、SEVENZ、BZIP2、LZ4。非心跳消息才会被压缩。
  18. store.mode:设置事务日志的存储位置,可以选择数据库、redis或者文件存储。以store开头的属性只在服务端有效。可选值有db、redis、file。
  19. store.file.dir:当设置store.mode=file时,以store.file开头的参数才会生效。该属性用于设置事务日志文件的保存位置,设置的是目录名,不是文件名。
  20. store.file.maxBranchSessionSize:将BranchSession对象存储到文件时,如果存储的字节数超过了该参数值,那么会使用GZIP压缩,如果压缩后还超过该值,则抛出异常。
  21. store.file.maxGlobalSessionSize:将GlobalSession对象存储到文件时,如果存储的字节数超过了该参数值,抛出异常。
  22. store.file.fileWriteBufferCacheSize:事务日志写入文件前,要先将日志写入缓存,然后由缓存写入文件,缓存使用的是直接内存,该参数值用于设置直接内存的大小。
  23. store.file.sessionReloadReadSize:
  24. store.file.flushDiskMode:设置刷盘格式,日志写入文件后,需要强制刷盘,才能真正写入磁盘,该参数用于设置异步刷盘还是同步输盘,异步刷盘是使用异步线程刷盘。可选参数有:SYNC_MODEL、ASYNC_MODEL。
  25. store.db.datasource:当设置store.mode=db时,以store.db开头的参数才会生效。该参数用于设置连接数据库的数据源类型。可选参数有:dbcp、druid、hikari。
  26. store.db.dbType:用于设置数据库类型。可选参数有:mysql、oracle、postgresql、h2、/oceanbase。
  27. store.db.driverClassName:设置数据库的驱动类的全限定名。
  28. store.db.url:数据库连接
  29. store.db.user:连接数据库的用户名
  30. store.db.password:连接数据库的密码
  31. store.db.minConn:最小连接数
  32. store.db.maxConn:最大连接数
  33. store.db.globalTable:当修改全局事务对象GlobalSession时,seata会将这些修改以事务日志的形式记录在数据库中,该参数用于设置存储这些日志的表名,默认是global_table。
  34. store.db.branchTable:当修改分支事务对象BranchSession时,seata会将这些修改以事务日志的形式记录在数据库中,该参数用于设置存储这些日志的表名,默认是branch_table。
  35. store.db.lockTable:分支事务会对将要访问的业务数据加锁,防止其他事务修改数据,这些锁信息都存储在数据库中,该参数用于设置存储锁数据的表名。默认是lock_table。
  36. store.db.queryLimit:seata可以根据条件查询GlobalSession,该参数用于限制数据库返回符合条件的GlobalSession的最大记录数,默认是100。
  37. server.recovery.committingRetryPeriod:下面以server开头的属性都只在服务端生效。
  38. server.recovery.asynCommittingRetryPeriod:DefaultCoodinator初始化时,会创建异步提交线程池,该参数用于设置异步提交线程池的线程启动间隔。在AT模式,全局事务提交都是由异步提交线程池完成的。默认启动间隔1000ms。
  39. server.recovery.rollbackingRetryPeriod:DefaultCoodinator初始化时,会创建重试回滚线程池,该参数用于设置重试回滚线程池的线程启动间隔。当通知分支事务回滚失败后,seata会继续通过重试回滚线程通知分支事务回滚。默认启动间隔1000ms。
  40. server.recovery.timeoutRetryPeriod:DefaultCoodinator初始化时,会创建超时检测线程池,该参数用于设置超时检测线程池的线程启动间隔。超时检测线程池用于检测超时事务。如果事务超时了,则将全局事务对象加入到重试回滚管理器中。默认启动间隔1000ms。
  41. server.undo.logSaveDays:TC每天会通知RM将一段时间以前的回滚日志删除,默认是7天以前,可以使用logSaveDays设置其他的值。
  42. server.undo.logDeletePeriod:该参数与server.undo.logSaveDays联合使用,该参数用于设置TC的通知频率,默认是一天通知一次。
  43. server.enableCheckAuth:设置TM和RM注册时,是否校验他们的权限。默认是true。
  44. server.maxCommitRetryTimeout:TC通知事务提交,如果超过该参数指定的时间事务仍未提交成功,则TC之后会跳过该事务,不会在尝试通知。默认100ms。在AT模式下,该参数不生效。
  45. server.maxRollbackRetryTimeout:TC通知事务回滚,如果超过该参数指定的时间事务仍未回滚成功,则TC之后会跳过该事务,不会在尝试通知。默认100ms。
  46. server.rollbackRetryTimeoutUnlockEnable:该参数与server.maxRollbackRetryTimeout联合使用。当TC通知事务回滚超过时间限制后仍未回滚成功的,通过该参数可以设置在超时之后是否解除分支事务锁。如果该参数为true,则解除。默认是true。
  47. metrics.enabled:表示是否启动指标统计模块,默认是false。
  48. metrics.registryType:seata的统计指标需要存放到注册中心,该参数用于设置注册中心类型,默认是compact,该类型是seata自身提供的实现,只在内存中存储统计指标。
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
seata-server-1.4.1.zip是Seata分布式事务解决方案的一个版本。Seata是由阿里巴巴开源的一款分布式事务框架,能够解决跨多个数据库、多个微服务之间的事务一致性问题。 seata-server-1.4.1.zip是Seata框架的服务部分,将其下载并解压后,可以得到Seata服务的相关文件配置。这些文件配置可以帮助我们搭建一个Seata事务管理中心,用于协调和管理分布式事务。 在seata-server-1.4.1.zip中,我们可以找到以下重要的文件和目录: 1. conf目录:该目录包含了Seata配置文件,我们可以根据实际需求进行配置调整,如修改注册中心、事务日志存储方式等。 2. lib目录:该目录包含了Seata的依赖库,包括了Seata的核心功能相关的类库以及注册中心、存储中心等插件的类库。 3. script目录:该目录包含了Seata服务的脚本文件,用于启动、关闭、初始化Seata服务。 4. seata-server.bat和seata-server.sh文件:这两个文件Seata服务的启动脚本,在Windows和Linux环境下可以分别使用这两个脚本来启动Seata服务。 要使用seata-server-1.4.1.zip,我们需要首先配置seata.conf文件,该文件位于conf目录下,配置好相关的注册中心、存储中心等信息。然后使用脚本文件启动Seata服务Seata服务将会根据seata.conf中的配置来启动和运行。 通过seata-server-1.4.1.zip提供的Seata服务,我们可以实现分布式事务的管理和协调,保证多个微服务间的事务一致性。在使用Seata时,我们可以根据具体的业务场景和需求,进行相应的配置和定制,以实现更好的分布式事务管理。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值