Seata入门系列(8)-Nacos 2.0+Seata 1.4.2 集群模式搭建
安装Nacos 2.0
安装Mysql
Seata 1.4.2 高可用部署
seata
高可用依赖于注册中心、数据库,可不依赖配置中心。
下载安装包并解压,下载地址。
1. 导入数据库脚本
db模式需要在Mysql数据库中创建global_table
, branch_table
, lock_table
表。
2. 注册中心配置
Seata-Server 需要使用注册中心,以 Nacos 为例。
更多注册中心支持可参考注册中心。
修改registry.conf的注册中心配置:
registry {
type = "nacos"
nacos {
# seata服务注册在nacos上的别名,客户端通过该别名调用服务
application = "seata-server"
# 请根据实际生产环境配置nacos服务的ip和端口
serverAddr = "127.0.0.1:8848"
# nacos上指定的namespace
namespace = ""
cluster = "default"
username = ""
password = ""
}
}
config {
type = "nacos"
nacos {
# 请根据实际生产环境配置nacos服务的ip和端口
serverAddr = "127.0.0.1:8848"
# nacos上指定的namespace
namespace = ""
group = "SEATA_GROUP"
username = ""
password = ""
# 从v1.4.2版本开始,已支持从一个Nacos dataId中获取所有配置信息,你只需要额外添加一个dataId配置项
dataId: ""
}
}
3. 配置中心
在第二步中,我们使用了Naocs 作为Seata 的配置中心,更多配置中心支持可参考配置中心。
当然也可不依赖配置中心,但是就需要各个节点的Seata 配置保持一致了。
修改储存方式为db,配置数据库连接:
相关说明:
# 存储模式
store.mode=db
store.db.datasource=druid
store.db.dbType=mysql
# 需要根据mysql的版本调整driverClassName
# mysql8及以上版本对应的driver:com.mysql.cj.jdbc.Driver
# mysql8以下版本的driver:com.mysql.jdbc.Driver
store.db.driverClassName=com.mysql.cj.jdbc.Driver
# 注意根据生产实际情况调整参数host和port
store.db.url=jdbc:mysql://127.0.0.1:3306/seata-server?useUnicode=true&characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useSSL=false
# 数据库用户名
store.db.user=
# 用户名密码
store.db.password=
找到nacos 初始化配置脚本:
如果是Windows,则需要安装Git,右键打开Git Bash,输入sh nacos-config.sh,导入完成后,可在nacos中查看到所有配置。
4. 启动集群
配置完后,直接启动Seata 即可,这里需要注意设置启动参数,参考文档。
因为测试是在同一台机器,所以这里设置了不同的端口和节点序号。
分别启动三个节点,查看Nacos,发现都注册进来了。
集群测试
1. 启动项目
启动我们之前搭建的三个项目,可以看到后台服务都在各个Seata 节点中注册了自己的RM。
2. 测试分布式事务
发起多个分布式事务请求,可以看到分别分发到了不同的节点
3. 负载均衡
可以看到这里使用的是Nacos 中的权重算法,我们可以在这里配置节点的权重值。
总结
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhhheegh
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
微信运动停用后别人还能看到步数吗
PHP中文网 07-22