提交 05974565 编写于 作者: zhouweidong's avatar zhouweidong

seata分布式事务

上级 9f0c27df
...@@ -27,6 +27,7 @@ import java.util.List; ...@@ -27,6 +27,7 @@ import java.util.List;
@Slf4j @Slf4j
@Import({ @Import({
com.alibaba.cloud.seata.feign.SeataFeignClientAutoConfiguration.class,
FeignClientsConfiguration.class FeignClientsConfiguration.class
}) })
@EnableDiscoveryClient @EnableDiscoveryClient
......
...@@ -53,6 +53,7 @@ import java.util.List; ...@@ -53,6 +53,7 @@ import java.util.List;
// } // }
) )
@Import({ @Import({
com.alibaba.cloud.seata.feign.SeataFeignClientAutoConfiguration.class,
org.springframework.cloud.openfeign.FeignClientsConfiguration.class org.springframework.cloud.openfeign.FeignClientsConfiguration.class
}) })
@EnableAsync @EnableAsync
......
...@@ -31,7 +31,7 @@ TARGET=PSSYSTEM ...@@ -31,7 +31,7 @@ TARGET=PSSYSTEM
<#-- properties, usually record jars version constants --> <#-- properties, usually record jars version constants -->
<properties> <properties>
<!-- Spring Cloud Alibaba(2.1.x.RELEASE) & Spring Cloud(Spring Cloud Greenwich) & Spring Boot(2.1.x.RELEASE) compatibility --> <!-- Spring Cloud Alibaba(2.1.x.RELEASE) & Spring Cloud(Spring Cloud Greenwich) & Spring Boot(2.1.x.RELEASE) compatibility -->
<spring-cloud-alibaba.version>2.1.1.RELEASE</spring-cloud-alibaba.version> <spring-cloud-alibaba.version>2.2.1.RELEASE</spring-cloud-alibaba.version>
<spring-cloud-openfeign.version>2.2.1.RELEASE</spring-cloud-openfeign.version> <spring-cloud-openfeign.version>2.2.1.RELEASE</spring-cloud-openfeign.version>
...@@ -91,6 +91,12 @@ TARGET=PSSYSTEM ...@@ -91,6 +91,12 @@ TARGET=PSSYSTEM
<!-- eureka微服务注册中心 --> <!-- eureka微服务注册中心 -->
<eureka-client.version>2.2.1.RELEASE</eureka-client.version> <eureka-client.version>2.2.1.RELEASE</eureka-client.version>
<!-- 阿里sentinel熔断器 -->
<alibaba-sentinel.version>2.1.1.RELEASE</alibaba-sentinel.version>
<!-- 阿里seata分布式事务 -->
<alibaba-seata.version>1.3.0</alibaba-seata.version>
<#if sys.getAllPSSystemDBConfigs()??> <#if sys.getAllPSSystemDBConfigs()??>
<#list sys.getAllPSSystemDBConfigs() as dbConfig> <#list sys.getAllPSSystemDBConfigs() as dbConfig>
<#if dbConfig.getDBType()=='MYSQL5'> <#if dbConfig.getDBType()=='MYSQL5'>
...@@ -321,6 +327,7 @@ TARGET=PSSYSTEM ...@@ -321,6 +327,7 @@ TARGET=PSSYSTEM
<dependency> <dependency>
<groupId>com.alibaba.cloud</groupId> <groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-sentinel</artifactId> <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
<version>${r'${alibaba-sentinel.version}'}</version>
</dependency> </dependency>
<!-- Lombok --> <!-- Lombok -->
...@@ -388,6 +395,31 @@ TARGET=PSSYSTEM ...@@ -388,6 +395,31 @@ TARGET=PSSYSTEM
</dependency> </dependency>
</#if> </#if>
<!-- 阿里seata分布式事务 -->
<dependency>
<groupId>io.seata</groupId>
<artifactId>seata-spring-boot-starter</artifactId>
<version>${r'${alibaba-seata.version}'}</version>
<exclusions>
<exclusion>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-seata</artifactId>
<version> ${r'${spring-cloud-alibaba.version}'}</version>
<exclusions>
<exclusion>
<groupId>io.seata</groupId>
<artifactId>seata-spring-boot-starter</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies> </dependencies>
</project> </project>
...@@ -57,6 +57,7 @@ import java.util.List; ...@@ -57,6 +57,7 @@ import java.util.List;
</#if> </#if>
}) })
@Import({ @Import({
com.alibaba.cloud.seata.feign.SeataFeignClientAutoConfiguration.class,
org.springframework.cloud.openfeign.FeignClientsConfiguration.class org.springframework.cloud.openfeign.FeignClientsConfiguration.class
}) })
@EnableFeignClients(basePackages = {"${pub.getPKGCodeName()}" }) @EnableFeignClients(basePackages = {"${pub.getPKGCodeName()}" })
......
...@@ -26,6 +26,16 @@ TARGET=PSSYSTEM ...@@ -26,6 +26,16 @@ TARGET=PSSYSTEM
<#break> <#break>
</#if> </#if>
</#list> </#list>
<#assign seataEnable="false">
<#assign TcServerCluster="default">
<#assign seataServerName="seata-server">
<#assign nacosAddress="localhost">
<#assign nacosGroup="DEFAULT_GROUP">
<#assign nacosNamespace="">
<#assign nacosUserName="">
<#assign nacosPassWord="">
<#comment>前端应用微服务平台配置</#comment> <#comment>前端应用微服务平台配置</#comment>
<#if sys.getAllPSDevSlnMSDepApps()??> <#if sys.getAllPSDevSlnMSDepApps()??>
<#list sys.getAllPSDevSlnMSDepApps() as depApp> <#list sys.getAllPSDevSlnMSDepApps() as depApp>
...@@ -43,6 +53,30 @@ TARGET=PSSYSTEM ...@@ -43,6 +53,30 @@ TARGET=PSSYSTEM
<#if appPlatform.getUserParam("spring.data.mongodb.uri",mongodbUri)??> <#if appPlatform.getUserParam("spring.data.mongodb.uri",mongodbUri)??>
<#assign mongodbUri = appPlatform.getUserParam("spring.data.mongodb.uri",mongodbUri)> <#assign mongodbUri = appPlatform.getUserParam("spring.data.mongodb.uri",mongodbUri)>
</#if> </#if>
<#if appPlatform.getUserParam("seata.enabled",seataEnable)??>
<#assign seataEnable = appPlatform.getUserParam("seata.enabled",seataEnable)>
</#if>
<#if appPlatform.getUserParam("seata.service.vgroup-mapping."+sys.getName()+"group",TcServerCluster)??>
<#assign TcServerCluster = appPlatform.getUserParam("seata.service.vgroup-mapping."+sys.getName()+"group",TcServerCluster)>
</#if>
<#if appPlatform.getUserParam("seata.registry.nacos.application",seataServerName)??>
<#assign seataServerName = appPlatform.getUserParam("seata.registry.nacos.application",seataServerName)>
</#if>
<#if appPlatform.getUserParam("seata.registry.nacos.server-addr",nacosAddress)??>
<#assign nacosAddress = appPlatform.getUserParam("seata.registry.nacos.server-addr",nacosAddress)>
</#if>
<#if appPlatform.getUserParam("seata.registry.nacos.group",nacosGroup)??>
<#assign nacosGroup = appPlatform.getUserParam("seata.registry.nacos.group",nacosGroup)>
</#if>
<#if appPlatform.getUserParam("seata.registry.nacos.namespace",nacosNamespace)??>
<#assign nacosNamespace = appPlatform.getUserParam("seata.registry.nacos.namespace",nacosNamespace)>
</#if>
<#if appPlatform.getUserParam("seata.registry.nacos.userName",nacosUserName)??>
<#assign nacosUserName = appPlatform.getUserParam("seata.registry.nacos.userName",nacosUserName)>
</#if>
<#if appPlatform.getUserParam("seata.registry.nacos.password",nacosPassWord)??>
<#assign nacosPassWord = appPlatform.getUserParam("seata.registry.nacos.password",nacosPassWord)>
</#if>
<#break> <#break>
</#if> </#if>
</#list> </#list>
...@@ -64,6 +98,30 @@ TARGET=PSSYSTEM ...@@ -64,6 +98,30 @@ TARGET=PSSYSTEM
<#if sysApiPlatform.getUserParam("spring.data.mongodb.uri",mongodbUri)??> <#if sysApiPlatform.getUserParam("spring.data.mongodb.uri",mongodbUri)??>
<#assign mongodbUri = sysApiPlatform.getUserParam("spring.data.mongodb.uri",mongodbUri)> <#assign mongodbUri = sysApiPlatform.getUserParam("spring.data.mongodb.uri",mongodbUri)>
</#if> </#if>
<#if sysApiPlatform.getUserParam("seata.enabled",seataEnable)??>
<#assign seataEnable = sysApiPlatform.getUserParam("seata.enabled",seataEnable)>
</#if>
<#if sysApiPlatform.getUserParam("seata.service.vgroup-mapping."+sys.getName()+"group",TcServerCluster)??>
<#assign TcServerCluster = sysApiPlatform.getUserParam("seata.service.vgroup-mapping."+sys.getName()+"group",TcServerCluster)>
</#if>
<#if sysApiPlatform.getUserParam("seata.registry.nacos.application",seataServerName)??>
<#assign seataServerName = sysApiPlatform.getUserParam("seata.registry.nacos.application",seataServerName)>
</#if>
<#if sysApiPlatform.getUserParam("seata.registry.nacos.server-addr",nacosAddress)??>
<#assign nacosAddress = sysApiPlatform.getUserParam("seata.registry.nacos.server-addr",nacosAddress)>
</#if>
<#if sysApiPlatform.getUserParam("seata.registry.nacos.group",nacosGroup)??>
<#assign nacosGroup = sysApiPlatform.getUserParam("seata.registry.nacos.group",nacosGroup)>
</#if>
<#if sysApiPlatform.getUserParam("seata.registry.nacos.namespace",nacosNamespace)??>
<#assign nacosNamespace = sysApiPlatform.getUserParam("seata.registry.nacos.namespace",nacosNamespace)>
</#if>
<#if sysApiPlatform.getUserParam("seata.registry.nacos.userName",nacosUserName)??>
<#assign nacosUserName = sysApiPlatform.getUserParam("seata.registry.nacos.userName",nacosUserName)>
</#if>
<#if sysApiPlatform.getUserParam("seata.registry.nacos.password",nacosPassWord)??>
<#assign nacosPassWord = sysApiPlatform.getUserParam("seata.registry.nacos.password",nacosPassWord)>
</#if>
<#break> <#break>
</#if> </#if>
</#list> </#list>
...@@ -230,6 +288,23 @@ server: ...@@ -230,6 +288,23 @@ server:
mime-types: application/javascript,text/css,application/json,application/xml,text/html,text/xml,text/plain mime-types: application/javascript,text/css,application/json,application/xml,text/html,text/xml,text/plain
min-response-size: 10240 min-response-size: 10240
seata:
enabled: ${seataEnable} #是否开启全局事务
application-id: ${sys.getName()} #服务标识
tx-service-group: ${sys.getName()}group #事务组
service:
vgroup-mapping:
${sys.getName()}group: ${TcServerCluster} #指定事务组对应的Tc Server集群
registry:
type: nacos #注册中心
nacos:
application: ${seataServerName} #Tc Server服务标识
server-addr: ${nacosAddress} #注册中心地址
group: ${nacosGroup} #服务组
namespace: ${nacosNamespace} #服务命名空间
userName: "${nacosUserName}" #用户名
password: "${nacosPassWord}" #密码
<#macro singleDatasourceConfig> <#macro singleDatasourceConfig>
datasource: datasource:
username: ${dbUserName} username: ${dbUserName}
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册