Seata 分布式事务

文档

Linux 安装 Seata

  • Seata 需要 Java 1.8+ 环境才能运行,需要配置 环境变量 JAVA_HOME

解压

# 解压命令
tar -zxvf apache-seata-2.5.0-incubating-bin.tar.gz

seata-server 服务

参数 全写 作用 备注
-h --host 指定在注册中心注册的 IP 不指定时获取当前的 IP,外部访问部署在云环境和容器中的 server 建议指定
-p --port 指定 server 启动的端口 默认为 8091
-m --storeMode 事务日志存储方式 支持 file,db,redis,默认为 file,注:redis 需 seata-server 1.3 版本及以上
-n --serverNode 用于指定seata-server节点ID 如 1,2,3…, 默认为 1
-e --seataEnv 指定 seata-server 运行环境 dev, test 等, 服务启动时会使用 registry-dev.conf 这样的配置
# 配置 Seata seata-server Linux Service
cat <<EOF | tee /lib/systemd/system/seata-server.service
[Unit]
After=syslog.target

[Service]
Type=forking
# TODO 配置 JAVA_HOME 路径
Environment="JAVA_HOME=/srv/dragonwell-8.27.26"
ExecStart=/srv/apache-seata-2.5.0-incubating-bin/seata-server/bin/seata-server.sh

Restart=always
RestartSec=10
StartLimitInterval=60s
StartLimitBurst=3

[Install]
WantedBy=multi-user.target

EOF

seata-server 命令

命令 介绍
systemctl status seata-server.service --no-pager -l 查看 seata-server 状态
systemctl start seata-server.service 启动 seata-server
systemctl stop seata-server.service 停止 seata-server
systemctl restart seata-server.service 重启 seata-server
systemctl is-enabled seata-server.service 查看 seata-server 开启自启状态
systemctl enable seata-server.service 打开 seata-server 开启自启
systemctl disable seata-server.service 关闭 seata-server 开启自启

seata-namingserver 服务

# 配置 Seata seata-namingserver Linux Service
cat <<EOF | tee /lib/systemd/system/seata-namingserver.service
[Unit]
After=syslog.target

[Service]
Type=forking
# TODO 配置 JAVA_HOME 路径
Environment="JAVA_HOME=/srv/dragonwell-8.27.26"
ExecStart=/srv/apache-seata-2.5.0-incubating-bin/seata-namingserver/bin/seata-namingserver.sh

Restart=always
RestartSec=10
StartLimitInterval=60s
StartLimitBurst=3

[Install]
WantedBy=multi-user.target

EOF

seata-namingserver 命令

命令 介绍
systemctl status seata-namingserver.service --no-pager -l 查看 seata-namingserver 状态
systemctl start seata-namingserver.service 启动 seata-namingserver
systemctl stop seata-namingserver.service 停止 seata-namingserver
systemctl restart seata-namingserver.service 重启 seata-namingserver
systemctl is-enabled seata-namingserver.service 查看 seata-namingserver 开启自启状态
systemctl enable seata-namingserver.service 打开 seata-namingserver 开启自启
systemctl disable seata-namingserver.service 关闭 seata-namingserver 开启自启

日志

日志 说明
/logs/seata/seata-namingserver.8081.all.log
/logs/seata/seata-namingserver.8081.error.log
/logs/seata/seata-namingserver.8081.warn.log
/logs/seata/seata-server.8091.all.log
/logs/seata/seata-server.8091.error.log
/logs/seata/seata-server.8091.warn.log
/logs/seata/seata_gc.log.0.current

端口

服务 端口
seata-namingserver 8081
seata-server 8091
seata-server 9898

配置 seataServer.properties

  • 下载地址
    1. 建议通过 git 标签,选择与 seata-server 相同的版本