提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
sofaboot升级到4.1.0后,感觉nacos的版本应该升级了,这让我有了另一个思考,是不是seata也应该升个级呢?
(看了seata依赖,seata2.0.0用的nacos还是1.4.2版本呢,nacos升不升级都行啊,seata也不用升级嘛,本人比较喜新厌旧,不管旧的好不好,还是新版最香!)
一、环境准备
1.JDK17
2.sofaboot4.1.0
3.nacos2.0.3
4.seata 2.0.0
二、开撸
1.将seata的配置导入到nacos
1.下载config.txt
2.修改config.txt
store.mode=db
store.db.datasource=druid
store.db.dbType=mysql
store.db.driverClassName=com.mysql.jdbc.Driver
store.db.url=jdbc:mysql://127.0.0.1:3306/seata200?useUnicode=true&rewriteBatchedStatements=true
store.db.user=root
store.db.password=root
3.下载seata-server
4.修改seata-server的配置文件
server:
port: 7091
spring:
application:
name: seata-server
logging:
config: classpath:logback-spring.xml
file:
path: ${log.home:${user.home}/logs/seata}
extend:
logstash-appender:
destination: 127.0.0.1:4560
kafka-appender:
bootstrap-servers: 127.0.0.1:9092
topic: logback_to_logstash
console:
user:
username: seata
password: seata
seata:
config:
# support: nacos, consul, apollo, zk, etcd3
type: file
registry:
# support: nacos, eureka, redis, zk, consul, etcd3, sofa
type: nacos
nacos:
application: seata-server
server-addr: 127.0.0.1:8848
namespace:
group: SEATA_GROUP
cluster: default
username: nacos
password: nacos
##if use MSE Nacos with auth, mutex with username/password attribute
#access-key: ""
#secret-key: ""
store:
# support: file 、 db 、 redis 、 raft
mode: file
# server:
# service-port: 8091 #If not configured, the default is '${server.port} + 1000'
security:
secretKey: SeataSecretKey0c382ef121d778043159209298fd40bf3850a017
tokenValidityInMilliseconds: 1800000
ignore:
urls: /,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.jpeg,/**/*.ico,/api/v1/auth/login,/metadata/v1/**
5.将config.txt放在seata-server根目录
6.下载nacos-config.sh
7.将nacos-config.sh放在seata-server的conf目录下
8.执行导入,如下图
nacos-config.sh -h localhost -p 8848 -g SEATA_GROUP -t seata -u nacos -w nacos
#seata:nacos命名空间
#SEATA_GROUP:nacos组
导入成功后,就可以在nacos中看到了
2.pom配置
<properties>
<version.seata>2.0.0</version.seata>
</properties>
...........................
<dependency>
<groupId>io.seata</groupId>
<artifactId>seata-all</artifactId>
<version>${version.seata}</version>
</dependency>
<dependency>
<groupId>io.seata</groupId>
<artifactId>seata-server</artifactId>
<version>${version.seata}</version>
<exclusions>
<exclusion>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
</exclusion>
</exclusions>
</dependency>
3.方法加@GlobalTransactional
@GlobalTransactional(timeoutMills = 60000)
public void save(){
}
总结
没啥想说的,搞升级折磨人的,兄弟们做好为自己的犯贱行为付出时间代价的准备。
参考:https://blog.csdn.net/qq_40074764/article/details/123261200