Seata 部署
Seata分TC、TM和RM三个角色,TC(server端)为单独的服务端,TM和RM(客户端)由业务系统集成
TC部署
- 服务器数据存储的三种模式:
- file:(默认)单机模式,全局事务会话信息内存中读写并持久化本地文件root.data,性能较高(默认)
- db: 高可用模式,全局事务会话信息通过db共享,相应性能差些
- redis: Seata-Server 1.3及以上版本支持,性能较高,存在事务信息丢失风险,请提前配置适合当前场景的redis持久化配置
使用db模式部署
- 修改conf目录下file.conf文件
mode='db'
修改数据库连接信息
数据库版本只支持5.7+
mode = "db"
url = "jdbc:mysql://127.0.0.1:3306/seata_server"
user = "root"
password = "Huawei@123#"
- 创建数据库seata_server
- 创建表结构
https://github.com/seata/seata/blob/develop/script/server/db/mysql.sql
- 修改register.conf 注册中心
type = "nacos"
nacos {
application = "seata-server"
serverAddr = "127.0.0.1:8848"
group = "SEATA_GROUP"
namespace = ""
cluster = "default"
username = "nacos"
password = "nacos"
}
- 修改register.conf 配置中心
config {
# file、nacos 、apollo、zk、consul、etcd3
type = "nacos"
nacos {
serverAddr = "127.0.0.1:8848"
namespace = ""
group = "SEATA_GROUP"
username = "nacos"
password = "nacos"
}
- 修改配置文件 config.txt
config.txt文件从源码中获取 ,注意版本号
https://github.com/seata/seata/blob/1.0.0/script/config-center/config.txt
store.mode=db
store.db.url=jdbc:mysql://127.0.0.1:3306/seata_server?useUnicode=true
store.db.user=root
store.db.password=Huawei@123#
service.vgroupMapping.my_test_tx_group=default
事务分组名称:异地机房停电,后边也需要修改
default必须要等与register.conf中的cluster=“default”
- 执行命令,写入配置
script\config-center\nacos\nacos-config.sh
- 查看配置中心
- Seata启动参数,linux环境