描述:
前面两篇文章已经讲完怎么启动项目了,现在,主要讲项目启动的时候,代码的寻找逻辑,注意,这是重点,官网的描述有些问题,我在采坑后才分享的。
坑一:,seata-server的版本问题
我在下载seata 0.7.0的时候,还有点开里面的file-conf,还有vgroup_mapping的配置,可是,到了1.4.0的时候,已经没有了,
官网的配置地址为:https://github.com/seata/seata-samples/tree/master/springcloud-eureka-feign-mybatis-seata 说明,这个文档对应的数据版本有点老了,
在折腾了一番后,知道了,1.4.0不用配置! , 他对应的group的名字,就是registry.conf,里面的application-name,也就是seata-server注册到注册中心的那个名字,
就是group的名字!
坑二:关于accout-server,order-server,storage-server里面的配置文件对应关系问题
我们主要关注3个文件:file.conf,registry.conf,application.yml
怎么改:
一:application,yml里面的
spring: application: name: order-server --order-server这个名字,对应的是 registry.conf里面的application-name=order-server cloud: alibaba: seata: tx-service-group: fsp_tx_group -fsp_tx_group-这个名字,对应的是file.conf里面的vgroupMapping.fsp_tx_group
二:file.conf
service { #transaction service group mapping vgroupMapping.fsp_tx_group = "seata-server" --seata-server这个名字,对应的是seata 1.4.0这个服务注册到服务注册中心的名字,在seata 1.4.0的registry.conf里面的application-name里面有配置 #only support when registry.type=file, please don't set multiple addresses default.grouplist = "127.0.0.1:8091" #degrade, current not support enableDegrade = false #disable seata disableGlobalTransaction = false }
三:registry.conf
registry { # file 、nacos 、eureka、redis、zk、consul、etcd3、sofa type = "eureka" nacos { serverAddr = "localhost" namespace = "" cluster = "default" } eureka { serviceUrl = "http://localhost:8761/eureka" application = "order-server" --对应在application.yml配置的application-name weight = "1" } }
三:关于假如从官网下载下来的代码,会有的问题:
一:mysql的版本问题,导致报错,找不到数据库
二:使用的项目版本问题,主要采用2020年相对比较新,且稳定的版本
我在网盘中的项目相关版本为:
springboot :2.2.5
springcloud:Hoxton.SR8
msyql:8.0.19
seata:1.4.0
spring-cloud-alibaba-seata: 2.1.1