分布式--3--分布式事务

1 简介

事务在单系统中的表现:多次数据库操作用事务进行管理,来保证ACID原则。
但是如果各个模块都是单独独立出来的微服务,进行了分布式部署,单系统里的事务将不能保证各个数据库操作的一致性,因此就需要分布式事务来进行统一管理。要么全部成功执行,要么全部不执行。

2 2PC

2.1 原理

分布式事务:两阶段提交与三阶段提交 中的 两阶段提交协议(2PC:Two-Phrase Commit) 中的 第一阶段:投票阶段第二阶段:事务提交阶段

2.2 缺点

分布式事务:两阶段提交与三阶段提交 中的 两阶段提交协议(2PC:Two-Phrase Commit) 中的 缺点: 单点问题 同步阻塞 数据不一致性

2.3 代码实现

分布式–3.1–分布式事务_2PC代码实现

3 3PC

3.1 原理

2PC的两个阶段解释3PC的后两个阶段。3PC比2PC多一个CanCommit阶段 并 多了超时提交机制。

分布式事务:两阶段提交与三阶段提交 中的 三阶段提交协议(2PC:Three-Phrase Commit) 中的 第一阶段:can_commit第二阶段:pre_commit第三阶段:do_commit

3.2 缺点

分布式事务:两阶段提交与三阶段提交 中的 三阶段提交协议(2PC:Three-Phrase Commit) 中的 最后

3.3 代码实现

pass

4 AT

5 TCC

6 SAGA

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

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

相关文章

不同建模方式的介绍 RTL建模笔记(1)

说明:该专栏"RTL建模笔记"是《RTL Modeling with SystemVerilog for Simulation and Synthesis》的翻译;该笔记略过了第一章第一小节中背景介绍内容,以及第二小节前面部分的门级、RTL级建模介绍,对于后续学习不影响。 …

<13>-MySQL用户管理

目录 一,用户管理操作 1,创建用户 2,查询用户 3,修改密码 4,删除用户 二,数据库权限 1,用户授权 2,回收权限 一,用户管理操作 1,创建用户 --创建用户…

如何使用超低噪声电源提高AD 时钟电路质量,改善超声系统的图像质量

超声波技术是医疗诊断和其他应用中广泛使用的无创工具,已经从静态图像进化到动态图像,从黑白呈现变为彩色多普勒图像。这些重大进步主要是由于引入了数字超声技术。虽然这些进步提高了超声成像的有效性和通用性,但同样重要的是,这…

【解决方案】Kali 2022.3修复仓库密钥一键安装docker,docker compose

1、Kali 2022.3 2、一键安装docker,docker compose #!/bin/bashecho " 安全的Kali Docker安装脚本 "# 备份重要配置 cp /etc/apt/sources.list /etc/apt/sources.list.backup.$(date %Y%m%d)# 修复Kali仓库配置 echo "修复Kali仓库配置..." ca…

Transformer、RNN (循环神经网络) 和 CNN (卷积神经网络)的区别

我们来详细对比一下 Transformer、RNN (循环神经网络) 和 CNN (卷积神经网络) 这三种在深度学习中极其重要的架构,并通过具体例子说明它们的区别。 核心区别总结: 处理数据的方式: CNN: 专注于局部特征和空间/时间模式。通过卷积核在输入数据…

408第二季 - 组成原理 - 数据类型转换

这章内容会比较少 闲聊 如果题目说把8位改成4位,你保留低位就行了 这里保留的是0101 然后是有符号数和无符号数的转换 机器数就是二进制长什么样子 然后就是小数点是不参与存储的 然后简单看看代码 这是short就说明是有符号数 unsigned就是说明是无符号数 然后y…

让 Deepseek 写电器电费计算器(html版本)

以下是一个简单的电器电费计算器的HTML和CSS代码&#xff1a; <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0">…

react_flow自定义节点、边——使用darg布局树状结构

文章目录 ⭐前言⭐引入react-flow⭐自定义节点nodeType⭐自定义边edgeType⭐添加节点⭐inscode代码块⭐结束 ⭐前言 大家好&#xff0c;我是yma16&#xff0c;本文分享 前端 ——react_flow自定义节点、边——使用darg布局树状结构。 自定义效果 可以自定义节点、边、线条流动…

word表格批量转excel,提取表格数据到excel

本文将带你一步步实现一个将 Word 中的表格内容批量提取并转换为 Excel 文件的自动化工具&#xff0c;适用于需要手动复制粘贴数据到excel的场景 假设我们有这样的表格在word中&#xff0c;图片世放在excel中便于截图&#xff0c;现在需要将表格中有颜色的数据提取到对应的exce…

day2课程

1.添加pinia到Vue项目 2.counter基础使用 3.getters和异步action 4.storeToRefs和调试 5.项目初始化和git管理 6.别名路径联想设置 7.elementsPlus自动按需导入配置 这个项目使用的是按需引入 1.安装包管理器 npm install element-plus --save 2.按需引入 npm install -D unp…

Vue3 + TypeScript + Element Plus 设置表格行背景颜色

技术要点&#xff1a; 1、使用 :row-class-name"setRowClassName" 设置表格行类名 2、不能同时使用 stripe 3、设置行类名的样式 应用效果&#xff1a; 同时使用 stripe 出来的效果&#xff1a; 参考代码&#xff1a; ReagentTable.vue <script setup lang&…

山东大学 软件项目管理知识点总结

软件项目管理背诵总结 将老师所发ppt的知识点整理&#xff0c;方便查阅与背诵。 文章目录 软件项目管理背诵总结1. 概述1.1 什么是项目&#xff1f;1.2 项目有那些特征&#xff1f;1.3 项目于日常工作有什么区别&#xff1f;1.4 如何衡量一个项目是否成功&#xff1f;1.5 软件项…

css基础笔记简洁版1

&#x1f4d8; CSS 基础笔记 1 一、CSS 简介 CSS&#xff08;层叠样式表&#xff09;用于为网页添加样式&#xff0c;实现结构与样式分离&#xff0c;能够控制颜色、字体、布局、位置、动画等视觉效果。 二、基本语法 选择器 {属性1: 值1;属性2: 值2; }说明&#xff1a; 选…

reactor模型学习

学习链接 狂野架构师第四期netty视频 - B站视频 狂野架构师训练营6期 - B站视频 Netty学习example示例&#xff08;含官方示例代码&#xff09; LG-Netty学习 【硬核】肝了一月的Netty知识点 - 启动过程写的很详细 Reactor模型讲解 一文搞懂Reactor模型与实现 高性能网络编…

应用探析|千眼狼高速摄像机、sCMOS相机、DIC测量、PIV测量在光学领域的应用

2025&#xff0c;长春&#xff0c;中国光学学会学术大会。中科视界携千眼狼品牌四大科学仪器高速摄像机、sCMOS科学相机、DIC应变测量系统、PIV流场测量系统亮相&#xff0c;在光学领域多个细分研究方向承载科学实验的感知与测量任务。 1先进制造技术及其应用 激光切割、激光焊…

Kafka 4.0.0集群部署

Kafka 4.0.0集群部署 1.1 关闭防火墙和 selinux 关闭防火墙 systemctl stop firewalld.service systemctl disable firewalld.service关闭selinux setenforce 0 #&#xff08;临时生效&#xff09; sed -i s/^SELINUXenforcing/SELINUXdisabled/ /etc/selinux/config #&…

探秘卷积神经网络(CNN):从原理到实战的深度解析

在图像识别、视频处理等领域&#xff0c;卷积神经网络&#xff08;Convolutional Neural Network&#xff0c;简称 CNN&#xff09;如同一位 “超级侦探”&#xff0c;能够精准捕捉图像中的关键信息&#xff0c;实现对目标的快速识别与分析。从医疗影像诊断到自动驾驶中的路况感…

vue3导入xlsx表格处理数据进行渲染

下载插件 npm install -S xlsx import * as XLSX from "xlsx"; // Vue3 版本 <el-upload class"upload-demo"accept".xlsx":http-request"channel":show-file-list"false":limit"1"><el-button type&qu…

生成模型_条件编码器

条件编码器可以采用不同的网络结构&#xff0c;UNet 是其中非常常见的一种&#xff0c;尤其在 Diffusion 和图像生成任务中用得最多。 &#x1f9e0; 什么是“条件编码器”&#xff1f; 在 **条件生成模型&#xff08;Conditional GAN / Diffusion&#xff09;**中&#xff0c…

@Scheduled, @PostConstruct, @PreDestroy, @Async, @OnApplicationEvent

注解名称模块功能引入年份版本是否推荐使用PostConstructjavax.annotation (Java EE) / spring-beansBean 初始化完成后执行的方法2006Java EE 5 / Spring 2.0✔️ 推荐PreDestroyjavax.annotation (Java EE) / spring-beansBean 销毁前执行的方法2006Java EE 5 / Spring 2.0✔…