上一篇老顾介绍了Seata基本原理,今天老顾来介绍一下Seata的基本使用,可以避免让小伙伴们入坑,小伙伴们也要动手操作哦!
经常看老顾文章的小伙伴们,应该清楚老顾是一直推荐SpringCloud Alibaba的系统的组件的,而且Seata也是阿里开源出来的,所以大家一定要知道SpringCloud Alibaba的生态的组件版本关系。
到github中的seata项目中,下载release;并查看源文件中有个script文件
此目录存放用于客户端的配置和SQL
用于存放各种配置中心的初始化脚本文件;小伙伴们从文件夹名称中,一看就知道对应什么配置中心了。
我们看nacos-config.sh脚本文件中,就能够发现需要读取config.txt。
seata-server的包比较难下载,github上比较慢,小伙伴们懂的
下载好了后,就看到
我们这次就把seata和nacos相结合。
###创建Seata数据库
我们在源文件中script中的server/db目录中,打开mysql.sql,因为老顾这里使用的是mysql数据库;这个是在server存储模式为db数据库时才会有效,也是官方推荐的方式。
###config.txt配置
此文件是执行配置中心脚本时,都会读取的文件,里面配置了核心信息
上面的自定义组名,一定要记住,后面在配置客户端应用的时候,需要配置组名一致 seata server的数据库的配置信息
###执行nacos-config
执行初始化脚本nacos-config.sh配置到nacos中
chmod +x nacos-config.sh./nacos-config.sh localhost
执行脚本,看到此信息,表示初始化数据成功,我们再来看看nacos里面的信息。
可以在看到很多配置信息,以及Group组名为 SEATA_GROUP。
启动seata-server
修改seata-server目录中的conf里面,file.conf、registry.conf。
在registry.conf配置把seata-server注册到nacos中 ,并且配置中心也是为nacos。
seata-server中的配置信息放到nacos中
利用nacos作为配置中心,需要到nacos配置中心去配置数据存储方式,我们需要修改配置,可以到nacos里面修改。
注意:如果registry.conf中的config为file的话(个人测试用,生产环境不推荐),可以在file.conf中配置seata-server存储的方式配置为db,把事务相关的信息存储到数据库中
启动运行seata
命名参考:
Usage: sh seata-server.sh(适用 linux and mac) 或者 cmd seata-server.bat(适用 windows) [options]
#可携带参数 Options:
--host, -h
The host to bind. # 绑定ip地址
Default: 0.0.0.0
--port, -p # 端口
The port to listen.
Default: 8091 # 默认
--storeMode, -m #启动模式 文件 或数据库
log store mode : file、db
Default: file ##默认
--help #帮助
示例sh seata-server.sh -p 8091 -h 127.0.0.1 -m file
我们这里使用db数据库存储模式,运行 sh seata-server.sh
我们发现seata-server在nacos中已经注册了。到此seata-server已经安装完成。
今天老顾主要介绍了seata版本关系,以及源项目中的文件目录含义,和如何安装seata server,在操作过程中,小伙伴们一定要注意相关的配置文件。
一定不要搞错了对应的seata版本,之前seata的1.0.0之前的版本配置信息的位置是不一样的,千万记住哦。
下篇我们就介绍实战案例,以及会遇到的一个大坑,以及解决方案。
提前多熟悉阿里往年的面试题肯定是对面试有很大的帮助的,但是作为技术性职业,手里有实打实的技术才是你面对面试官最有用的利器,这是从内在散发出来的自信。
备战阿里时我花的最多的时间就是在学习技术上,占了我所有学习计划中的百分之70,这是一些我学习期间觉得还是很不错的一些学习笔记,以及学习视频都是可以点击这里免费领取的!
我为什么要写这篇文章呢,其实我觉得学习是不能停下脚步的,在网络上和大家一起分享,一起讨论,不单单可以遇到更多一样的人,还可以扩大自己的眼界,学习到更多的技术,我还会在csdn、博客、掘金等网站上分享技术,这也是一种学习的方法。
今天就分享到这里了,谢谢大家的关注,以后会分享更多的干货给大家!
享到这里了,谢谢大家的关注,以后会分享更多的干货给大家!
[外链图片转存中…(img-TOr9jD2R-1623585247362)]
[外链图片转存中…(img-OcoMjEM4-1623585247363)]
[外链图片转存中…(img-FB5W6ozY-1623585247363)]