安装——Linux安装Seata
安装——Linux安装Seata
Seata是阿里巴巴开源的分布式事务中间件,以高效并且对业务0 侵入的方式,解决微服务场景下面临的分布式事务问题。附上项目github链接:https://github.com/seata
Seata解决方案
解决分布式事务问题,有两个设计初衷:
对业务无侵入:即减少技术架构上的微服务化所带来的分布式事务问题对业务的侵入
高性能:减少分布式事务解决方案所带来的性能消耗
Seata中有两种分布式事务实现方案,AT及TCC:
AT 模式主要关注多 DB 访问的数据一致性,当然也包括多服务下的多 DB 数据访问一致性问题
TCC 模式主要关注业务拆分,在按照业务横向扩展资源时,解决微服务间调用的一致性问题
启动Seata-Server
- 前往官方项目主页下载最新版并解压:https://github.com/seata/seata/releases
wget https://github.com/seata/seata/releases/download/v0.9.0/seata-server-0.9.0.tar.gz
tar -xvf seata-server-0.9.0.tar.gz
ll
cd seata
- 修改目录下 conf/registry.conf 配置
vim conf/registry.conf
默认为file模式,这里我们改为nacos模式,从注册中心动态获取相关配置
registry {
# file 、nacos 、eureka、redis、zk、consul、etcd3、sofa
type = "nacos"
nacos {
serverAddr = "localhost"
namespace = ""
cluster = "default"
}
}
config {
# file、nacos 、apollo、zk、consul、etcd3
type = "nacos"
nacos {
serverAddr = "localhost"
namespace = ""
}
}
- 修改目录下 conf/nacos-config.txt 配置
vim conf/nacos-config.txt
注意 service.vgroup_mapping.${your-service-gruop}=default,中间的 ${your-service-gruop} 为自己定义的服务组名称,SpringBlade默认为service-name-group的格式。
若服务名为blade-demo,则这里配置的 ${your-service-gruop} 为blade-demo-group
比如截图中的两个服务,分别是blade-desk和blade-flow,他们对应的配置如下
service.vgroup_mapping.blade-desk-group=default
service.vgroup_mapping.blade-flow-group=default
修改store.mode=db
修改对应数据库连接、账号、密码
- 执行命令初始化nacos配置
cd conf/
sh nacos-config.sh 127.0.0.1
-
刷新nacos查看配置,发现已经自动生成了一批SEATA-GROUP组下的配置,说明配置成功.
nacos管理页面:http://192.168.1.221:8848/nacos
默认登录用户名和密码都为:nacos
-
初始化数据库和运行sql文件建seata相关表。
-
启动seata-server
cd bin/
sh seata-server.sh -p 8091 -h 127.0.0.1
完成啦~
更多推荐
所有评论(0)