Seata之XA 模式的使用

系列文章目录


文章目录

  • 系列文章目录
  • 前言


前言

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分享给你的码吧。
在这里插入图片描述


Seata 是一款开源的分布式事务解决方案,致力于在微服务架构下提供高性能和简单易用的分布式事务服务。在 Seata 开源之前,Seata 对应的内部版本在阿里经济体内部一直扮演着分布式一致性中间件的角色,帮助经济体平稳的度过历年的双11,对各BU业务进行了有力的支撑。经过多年沉淀与积累,商业化产品先后在阿里云、金融云进行售卖。2019.1 为了打造更加完善的技术生态和普惠技术成果,Seata 正式宣布对外开源,未来 Seata 将以社区共建的形式帮助其技术更加可靠与完备。

在这里插入图片描述
Spring Cloud中使用Seata使用 Feign 实现远程调用。

Windows上安装Seata服务http://www.javacui.com/tool/622.html

XA模式,官方说明

http://seata.io/zh-cn/docs/dev/mode/xa-mode.html

官方参考

https://github.com/seata/seata-samples/tree/master/seata-xa

POM引入

<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-seata</artifactId><exclusions><!--版本较低,1.3.0,因此排除--><exclusion><artifactId>seata-spring-boot-starter</artifactId><groupId>io.seata</groupId></exclusion></exclusions>
</dependency>
<!--seata starter 采用1.4.2版本-->
<dependency><groupId>io.seata</groupId><artifactId>seata-spring-boot-starter</artifactId><version>1.4.2</version>
</dependency>

需要修改application.yml文件,添加一些配置:

seata:data-source-proxy-mode: XAregistry: # TC服务注册中心的配置,微服务根据这些信息去注册中心获取tc服务地址# 参考tc服务自己的registry.conf中的配置type: nacosnacos: # tcserver-addr: 192.168.2.22:8848username: nacospassword: nacosnamespace: "" # 命名空间,默认publicgroup: DEFAULT_GROUP # 分组,默认DEFAULT_GROUPapplication: seata-server # tc服务在nacos中的服务名称tx-service-group: seata-demo # 事务组,根据这个获取tc服务的cluster名称service:vgroup-mapping: # 事务组与TC服务cluster的映射关系seata-demo: DEFAULT

买个需要用到分布式事务的模块都要加入该配置

用@GlobalTransactional注解,替换原来Spring的@Transactional事务注解。

注意,只需要在入口模块的方法上,即发起全局事务的入口方法上改即可。

测试地址

http://localhost:8082/order?userId=user202103032042012&commodityCode=100202003032041&count=20&money=200

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/8768.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

全网最全:一文入门最热的LLM应用开发框架LangChain

f#### 1. LangChain 简介 1.1. LangChain 发展史 LangChain 的作者是 Harrison Chase&#xff0c;最初是于 2022 年 10 月开源的一个项目&#xff0c;在 GitHub 上获得大量关注之后迅速转变为一家初创公司。2017 年 Harrison Chase 还在哈佛上大学&#xff0c;如今已是硅谷的…

CPU基本知识点

目录 1.概念 2.分类 3.运作原理 4.指令系统 1.概念 CPU&#xff1a;英文Central Processing Unit&#xff0c;即中央处理器。 解释和执行指令的功能单元&#xff0c;它是计算机的中枢神经系统&#xff08;即核心&#xff09;。 是计算机最核心的部件&#xff0c;主要是运算…

大家都是怎么写毕业论文的? 推荐4个AI工具

写作这件事一直让我们从小学时期就开始头痛&#xff0c;初高中时期800字的作文让我们焦头烂额&#xff0c;一篇作文里用尽了口水话&#xff0c;拼拼凑凑才勉强完成。 大学时期以为可以轻松顺利毕业&#xff0c;结果毕业前的最后一道坎拦住我们的是毕业论文&#xff0c;这玩意不…

Java中包的概念package

Package Package:包 指明方法、类所处的包&#xff1b; 将类分配到不同的包中&#xff0c;方便管理&#xff1b; 用于指明文件中定义的类、接口等结构所在的包&#xff1b; 一个源文件只要一个包的声明语句&#xff0c;必须放到开头&#xff1b; 属于标识符&#xff0c;满足命…

细说夜莺监控系统告警自愈机制

虽说监控系统最侧重的功能是指标采集、存储、分析、告警&#xff0c;为了能够快速恢复故障&#xff0c;告警自愈机制也是需要重点投入建设的&#xff0c;所有可以固化为脚本的应急预案都可以使用告警自愈机制来快速驱动。夜莺开源项目从 v7 版本开始内置了告警自愈模块&#xf…

39-2 Web应用防火墙 - WAF数据库层绕过

如果你本地没有安装mysql就先安装一下:4-2 MySQL 的下载与安装_mysql5.7.9.1下载-CSDN博客 一、数据库层绕过简介 绕过数据库层通常用于规避Web应用防火墙(WAF)的SQL注入防护规则。攻击者需要利用数据库特性,寻找规避常规安全策略的方法。这里涉及到不同数据库的特性、SQ…

在类设计器中使用 C++ 代码其中类和匿名类

类设计器支持以下 C 代码元素 &#xff1a; 类&#xff08;与托管类形状类似&#xff0c;只不过它可以具有多重继承关系&#xff09; 匿名类&#xff08;显示类视图为匿名类型生成的名称&#xff09; 类设计器中的 C 类 类设计器支持 C 类&#xff0c;直观显示本机 C 类的方式…

如何在Java中实现单例设计模式?

在 Java 中实现单例设计模式主要有几种方式&#xff0c;每种方式都有其适用场景及优缺点。单例模式的目的是确保一个类只有一个实例&#xff0c;并提供一个全局访问点。以下是一些常见的实现方法&#xff1a; 懒汉式&#xff08;Lazy Initialization&#xff09; 该模式只有在…

blender导出gltf模型混乱

最近用户给了几个blender文件&#xff0c;在blender打开是这样的&#xff1a; 我导出成gltf候&#xff0c;在本地打开时&#xff0c;底部发生了改变&#xff1a; 可以看出来&#xff0c;底部由原来的类型box变为了两个平面&#xff0c;后来我查了下blender里的属性设置&#xf…

Hive的库操作

1.创建数据库 CREATE (DATABASE|SCHEMA) [IF NOT EXISTS] database_name --DATABASE 和 SCHEMA 的使用是一样的,CREATE DATABASE 是(HIVE-675)增加的.(尽量使用database).[COMMENT database_comment] --提示性的信息[LOCATION hdfs_pat…

邦芒贴士:在职场中做人再老实要记住这4个心眼

以前我们常常被教育说&#xff0c;做人一定要真诚实在&#xff0c;只有你真心对待别人&#xff0c;才能够赢得别人的真心&#xff0c;才能够交到朋友。但是混职场和交朋友并不一样。 ​在职场中&#xff0c;你是来工作赚钱的&#xff0c;交朋友是次要&#xff0c;你得在工作中生…

[0509] StackOverflowExchange 的关系和时间线 | Godaddy DNS API 加入用户限制

目录 StackExchange & StackOverflow 的关系和时间线Godaddy DNS API 加入用户限制 StackExchange & StackOverflow 的关系和时间线 为方便描述&#xff0c;将使用如下简称&#xff1a; Stack Overflow → SOStack Exchange → SE 关系: 先有 SO&#xff0c;基于 S…

java中的oop(二)、方法、对象数组、重载、参数.

public class Person {/*成员变量存储在堆中*/String name;int age;public void sleep() {String hour "18小时"; //局部变量&#xff1b;存储在栈中&#xff1b;System.out.println("he is sleepping!");}public void setAge(int age) { //局部变量--形…

Python | Leetcode Python题解之第75题颜色分类

题目&#xff1a; 题解&#xff1a; class Solution:def sortColors(self, nums: List[int]) -> None:n len(nums)p0, p2 0, n - 1i 0while i < p2:while i < p2 and nums[i] 2:nums[i], nums[p2] nums[p2], nums[i]p2 - 1if nums[i] 0:nums[i], nums[p0] num…

跟小米学爆品

#小米爆品# 【课程背景】 小米手机世界第一、小米充电宝世界第一、平衡车世界第一、小米空气净化器世界第一。 小米做出很多世界第一&#xff1b;小米为什么做什么产品都能快速成功&#xff1f;小米打造爆品成功的秘诀是 什么&#xff1f; 长期给小米生态链企业和小米孵化器&a…

指针与const

指针与const 定义的对象中加上const 关键字&#xff0c; 表达一经初始化就不可修改的特性const 对象必须初始化 指针与constconst char* pc;指向常量的指针pc 初始化可以指向常量字符串&#xff0c; 内容不可以修改&#xff0c;但是指针指向可以修改char* const cp;指向char …

ESD静电问题 | 案例

【转自微信公众号&#xff1a;EMC容冠电磁】

相亲系统功能介绍

相亲系统是一种旨在帮助单身人士寻找合适伴侣的平台&#xff0c;其主要功能通常包括以下几个方面&#xff1a; 实名认证&#xff1a;为了确保双方的权益保障&#xff0c;用户必须进行实名认证后才能使用该系统。这有助于增加系统的安全性和可信度。偏好选择&#xff1a;用户可…

【Python】io_backend参数简介

在许多编程框架和库中&#xff0c;尤其是涉及到数据处理和深度学习的应用程序中&#xff0c;io_backend 参数常用于配置输入/输出&#xff08;I/O&#xff09;操作的后端类型和其他相关设置。这个参数通常通过字典&#xff08;dict&#xff09;的形式提供&#xff0c;使得可以灵…

网络安全之ACL

ACL&#xff1a;访问控制列表——控制列表&#xff08;策略列表&#xff09;&#xff0c;是一个控制工具。 功能&#xff1a;&#xff01;、定义感兴趣路由&#xff08;控制层面&#xff09;。2、定义感兴趣流量&#xff08;数据层面&#xff09;。 例如&#xff1a; 假设在该…