首页 > 系统相关 >Linux安装部署seata集群模式

Linux安装部署seata集群模式

时间:2023-08-01 17:26:04浏览次数:47  
标签:seata db server client 集群 store Linux transport

第一步:下载seata安装包

下载地址:https://seata.io/zh-cn/blog/download.html
解压如下

image

进入conf文件夹编辑registry.conf 文件:
点击查看代码
	registry {
  # file 、nacos 、eureka、redis、zk、consul、etcd3、sofa
  type = "nacos"

  nacos {
    application = "seata-server"
    serverAddr = "127.0.0.1:8848"
    group = "SEATA_GROUP"
    namespace = ""
    cluster = "HZ"
    username = "nacos"
    password = "nacos"
  }
}

config {
  # file、nacos 、apollo、zk、consul、etcd3
  type = "nacos"

  nacos {
    serverAddr = "127.0.0.1:8848"
    namespace = ""
    group = "SEATA_GROUP"
    username = "nacos"
    password = "nacos"
    dataId = "seata.properties"
  }
}
seata配置完成直接去bin文件夹中启动就好
接下来打开我们的nacos新建seata的配置文件:

image

将下面配置复制进去,注意需要将数据库部分改成你的数据库配置。
点击查看代码
service.vgroupMapping.mygroup=HZ
transport.type=TCP
transport.server=NIO
transport.heartbeat=true
transport.enableClientBatchSendRequest=true
transport.default.server.codec=seata:codec=SEATA_CODEC_PB
transport.threadFactory.bossThreadPrefix=NettyBoss
transport.threadFactory.workerThreadPrefix=NettyServerNIOWorker
transport.threadFactory.serverExecutorThreadPrefix=NettyServerBizHandler
transport.threadFactory.shareBossWorker=false
transport.threadFactory.clientSelectorThreadPrefix=NettyClientSelector
transport.threadFactory.clientSelectorThreadSize=1
transport.threadFactory.clientWorkerThreadPrefix=NettyClientWorkerThread
transport.threadFactory.bossThreadSize=1
transport.threadFactory.workerThreadSize=default
transport.shutdown.wait=3
service.default.grouplist=127.0.0.1:8091
service.enableDegrade=false
service.disableGlobalTransaction=false
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.sqlParserType=druid
client.rm.reportSuccessEnable=false
client.rm.sagaBranchRegisterEnable=false
client.rm.tccActionInterceptorOrder=-2147482648
client.tm.commitRetryCount=5
client.tm.rollbackRetryCount=5
client.tm.defaultGlobalTransactionTimeout=60000
client.tm.degradeCheck=false
client.tm.degradeCheckAllowTimes=10
client.tm.degradeCheckPeriod=2000
client.tm.interceptorOrder=-2147482648
store.mode=db
store.db.datasource=druid
store.db.dbType=mysql
store.db.driverClassName=com.mysql.cj.jdbc.Driver
store.db.url=jdbc:mysql://127.0.0.1:3306/seata?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&zeroDateTimeBehavior=CONVERT_TO_NULL&allowMultiQueries=true&useSSL=false&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true
store.db.user=seata
store.db.password=seata
store.db.minConn=5
store.db.maxConn=30
store.db.globalTable=global_table
store.db.branchTable=branch_table
store.db.distributedLockTable=distributed_lock
store.db.queryLimit=100
store.db.lockTable=lock_table
store.db.maxWait=5000
store.redis.mode=single
store.redis.single.host=127.0.0.1
store.redis.single.port=6379
store.redis.sentinel.masterName=
store.redis.sentinel.sentinelHosts=
store.redis.maxConn=10
store.redis.minConn=1
store.redis.maxTotal=100
store.redis.database=0
store.redis.password=
store.redis.queryLimit=100
server.recovery.committingRetryPeriod=1000
server.recovery.asynCommittingRetryPeriod=1000
server.recovery.rollbackingRetryPeriod=1000
server.recovery.timeoutRetryPeriod=1000
server.maxCommitRetryTimeout=-1
server.maxRollbackRetryTimeout=-1
server.rollbackRetryTimeoutUnlockEnable=false
server.distributedLockExpireTime=10000
client.undo.dataValidation=true
client.undo.logSerialization=jackson
client.undo.onlyCareUpdateColumns=true
server.undo.logSaveDays=7
server.undo.logDeletePeriod=86400000
client.undo.logTable=undo_log
client.undo.compress.enable=true
client.undo.compress.type=zip
client.undo.compress.threshold=64k
log.exceptionRate=100
transport.serialization=seata
transport.compressor=none
metrics.enabled=false
metrics.registryType=compact
metrics.exporterList=prometheus
metrics.exporterPrometheusPort=9898
其中 service.vgroupMapping.mygroup=HZ 需要改成你自己的事务分组与集群名称。

mygroup为自定义分组,HZ为你的集群名称与registry.conf中配置一致。

最后在我们的项目中集成seata:
例如你的是application.yml那么你可以在下方加入以下配置:
点击查看代码
#seata配置 
seata:
  enabled: true
  registry:
    type: nacos
    nacos:
      namespace: ""
      application: seata-server
      server-addr: 127.0.0.1:8848
      group: SEATA_GROUP
      username: nacos
      password: nacos
  tx-service-group: mygroup
  service:
    vgroup-mapping:
      mygroup: HZ

大功告成!!

标签:seata,db,server,client,集群,store,Linux,transport
From: https://www.cnblogs.com/jingwei129/p/17598118.html

相关文章

  • 01-[Linux][Regulator]使用LDO编程示例
    1、在驱动代码中使用LDO供电操作的步骤如下:找到需要操作的LDO名字,如MTK平台:vio28在dts中找到相应的节点,如下所示:mt_pmic_vio28_ldo_reg:ldo_vio28{ regulator-name="vio28"; regulator-min-microvolt=<2800000>; regulator-max-microvolt=<2800000>; regulator-e......
  • 阿里云率先荣获容器集群稳定性先进级认证
    7月25日,由中国信通院发起的“2023稳保体系”评估结果在可信云大会现场公布,阿里云容器服务ACK成为首批通过“云服务稳定运行能力-容器集群稳定性”评估的产品,并荣获“先进级”认证。云原生技术正在激活应用构建新范式,构筑企业业务运行新基石。在推动各行各业拥抱云原生、用......
  • Linux KVM 网卡配置多队列
    网卡多队列查看系统是否支持lspci-vvv|grepEth-A30#有MSI-X说明系统支持查看网卡是否支持ethtool-leth0#Combined不为0说明支持设置网卡ethtool-Leth0combined<队列数量>确认是否生效ls/sys/class/net/eth0/queuesKVM虚拟机配置xml......
  • 在 Linux 上使用 VirtualBox 的命令行管理界面
    VirtualBox拥有一套命令行工具,你可以使用VirtualBox的命令行界面(CLI)对远程无界面的服务器上的虚拟机进行管理操作。在这篇教程中,你将会学到如何在没有GUI的情况下使用VBoxManage创建、启动一个虚拟机。VBoxManage是VirtualBox的命令行界面,你可以在你的主机操作系统......
  • 闲置资源优化,轻松检查集群中的空闲成本
    作者:梁成昊(景祁)前言Kubernetes提供了对计算、网络、存储资源的抽象,提升了集群资源管理的效率。然而,由于用户不需要直接管理底层资源,可能导致部分闲置资源未及时发现,造成成本浪费。在企业IT成本治理过程中,如何发现并处理这部分资源,是成本优化的重要环节。为解决上述问题,阿里......
  • Linux服务器宕机原因有哪些可以通过那些命令详细排查
    dmesg:这个命令可以查看系统启动时内核产生的日志信息,可以通过检查日志来了解是否有硬件或内核问题。journalctl:这个命令可以查看系统日志,包括服务启动、停止、错误信息等,可以帮助找到服务是否出现问题。top和htop:这两个命令可以查看系统当前的进程状态和资源占用情况,可能可......
  • linux环境下重启Tomcat服务
    1、如何在Linux操作系统定时重启Tomcat服务?2、linux环境下重启Tomcat服务3、linux重启tomcat服务命令4、Linux设置tomcat开机自动启动5、如何在Linux操作系统定时重启Tomcat服务6、linux如何启动tomcat用什么命令如何在Linux操作系统定时重启Tomcat服务?使用当时部署to......
  • Qt调用动态库的三种方式(linux)
     本文章主要记录Qt在linux电脑上调用so库的三种调用方式方式一:静态加载so库方式二:动态加载so库(QLibrary)方式三:动态加载so库(dlopen) 其他:封装的so库叫做:libsoowCapture.so,这个so库又依赖了其他的so库,我是把所有的so库放在lib文件夹里面。库文件+目录结构如下图:   ......
  • karmada多策略的多集群调度
    不同调度策略下的集群分发能力:ClusterAffinity:基于ClusterName、Label、Field的定向调度。Toleration:基于Taint和Toleration的调度。SpreadConstraint:基于集群拓扑的调度。ReplicasScheduling:针对有实例的工作负载的复制模式与拆分模式。差异化配置(Overri......
  • karmada跨集群服务治理
    多集群服务发现:使用ServiceExport和ServiceImport,实现跨集群的服务发现。多集群网络支持:使用Submariner打通集群间容器网络。使用ErieCanal实现跨集群的服务治理与ErieCanal集成支持跨集群的服务治理。 ......