文章目录

一、部署单机 TC Server
1. 下载Seata

在​​https://github.com/seata/seata/releases​​ 这里找到对应的版本软件包进行下载

RuoYi-Cloud 进阶篇_01( Seata 单机环境搭建)_持久化


注:单机模式只适用于学习或者本地测试阶段,生产环境推荐使用集群模式。

2. 解压缩
cd /app
tar
3. 启动
[root@node2 app]# cd /app/seata/seata-server-1.4.2/bin
[root@node2 bin]# nohup ./seata-server.sh &
4. 监听日志
tail

RuoYi-Cloud 进阶篇_01( Seata 单机环境搭建)_全局事务_02


可以看到日志中已经默认启动了 8091端口

因为 TC 需要进行全局事务和分支事务的记录,所以需要对应的存储。目前,TC 有两种存储模式( store.mode ):

file 模式:适合单机模式,全局事务会话信息在内存中读写,并持久化本地文件 root.data,性能较高。

db 模式:适合集群模式,全局事务会话信息通过 db 共享,相对性能差点。

显然,我们将采用 file 模式,最终我们部署单机 TC Server 如下图所示:

RuoYi-Cloud 进阶篇_01( Seata 单机环境搭建)_解压缩_03


因为我们使用 file 模式,所以可以看到用于持久化的本地文件 root.data。操作命令如下:

ls

RuoYi-Cloud 进阶篇_01( Seata 单机环境搭建)_运维_04


可以看到,已经默认生成了root.data文件

5. 启动命令讲解
sh seata-server.sh -p $LISTEN_PORT -m $MODE(file or db) -h $HOST -e $ENV
  • -p seata-server 监听服务端口号
  • -m 存储模式,可选值:file、db。file 用于单点模式,db用于ha模式,当使用db存储模式,需要修改配置中store配置节点的数据库配置,同时在数据库中初始化的sql
  • -h 用于解决seata-server和业务侧跨网络问题,其配置的host值直接显示到注册中心的服务可用地址host,当跨网络时这里需要配置为公网IP或NATIP,若都在同一局域网则无需配置
  • -e 用于解决多环境配置中心隔离问题