分布式知识点

分布式高级知识点 2PC、3PC和XA事务都是分布式事务协议,它们都有自己的优缺点。2PC简单高效,但可靠性较差。3PC更加可靠,但开销也更大。XA事务更加灵活和强大,但复杂度也更高。在选择分布式事务协议时,需要考虑以下因素:* 事务的可靠性要求* 事务的性能要求* 事务的复杂度* 参与事务的资源类型根据这些因素,可以选择最合适的分布式事务协议。基于数据库的分布式锁、基于Redis的分布式锁和基于ZooKeeper的分布式锁各有优缺点。在选择分布式锁时,需要根据具体场景来选择合适的锁机制。 阅读详情

1. 事务

1.1 分布式事务 acid

分布式理论: cap (c一致性(各个节点中对于同一数据的拷贝有着相同的值;),a可用性,p分区容错性(持久性),分区容错指通信失败导致脑裂,数据不一致)
方法
两阶段提交(一致性):第一阶段:事务管理器要求每个涉及到事务的数据库预提交;第二阶段:事务协调器要求每个数据库提交数据,或者回滚数据。
消息队列(最终一致):
一致性算法:

1.2 mysql事务

2. 分布式Session

  1. 粘性session(统一用户nginx代理到同一个服务器)
  2. redis集群或数据库

3. 分布式id

Snowflake
在这里插入图片描述
缺点
1. 时钟偏斜问题(Clock Skew)。我们知道普通的计算机系统时钟并不能保证长久的一致性,可能发生时钟回拨等问题,这就会导致时间戳不准确,进而产生重复ID(硬件时钟可能会因为各种原因发生不准的情况,网络中提供了ntp服务来做时间校准)
解决:
* 设置容忍时间,等待3ms使时钟恢复(适合偶尔发生一次时钟回拨)
* 机器分为两波,第一部分发生时钟回拨后,切换到第二部分的机器(时钟反复横跳)
3. 另外,序列号的可预测性是把双刃剑
4. ID设计阶段需要谨慎考虑暴露出的信息,如workid暴露出机器信息
5. 2038年”问题是由用于表示时间的容量不足引起的。

基于SOCKET的***网络软件的设计与实现 二、基于SOCKET的网络软件的需求。2、概要设计:画出软件系统结构图。3、详细设计:软件的详细设计,如类图、序列图、重要的算法流程图或伪代码,等等。4、实现:软件基本功能相关的截图和关键代码。 阅读详情

相关推荐

GEO数据库数据下载方法总结

#GEO数据下载 GEO是生信分析经常用到的数据库。经常需要从中获取表达矩阵,平台信息,meta信息等,本博文总结了几种下载GEO数据的方法,各有优劣,实际应用过程中自行选择适合自己的。 ##方法一:直接从浏览器中下载 以数据集GSE1001为例, 可以直接点击“Series Matrix Files”获取该样本txt格式的表达谱数据,一般我们认为这种处理过的表达谱数据是没有问题的,当然,具体情况具体分析。 打开下载的文件可以看到许多“#”开头的行,这些是注释信息,一般关注这些注释信息中的“data pr

sakoko_的博客 4万+

分布式事务XA+JTA+TCC++RocketMQ+SEATA原理加实战

事务大家都很熟悉,小范围来说就是数据库为了保证数据的一致性而做的操作规范和限制。 常见的就是AICD四大特性:原子性,隔离性,一致性,持久性 分布式事务顾名思义就是分布式系统当中的事务如何保证这些特性。 分布式事务分为两块来理解: 1.分布式:那么就会涉及到多个数据库(支持事务),内存和磁盘数据等硬件都不在一起,想从操作系统层面控制是不可能了。那么只能找出一个协调者来组织本地事务一起工作。 2.事务:必须本地数据库支持(无论关系型数据库还是非关系型数据库) 分布式系统有一个很著名的CAP理论, C 一致性:

骏马逸动,心随你动的博客 3017

西门子 G120 变频器报文

G120报文

mmxxoo_xxmmp的博客 8069

分布式事务-解决方案

分布式

qq_23350817的博客 599

【QML初学者文档】一问读懂QML基础开发(内附大量简单源码)

QML是Qt的一大特色,拥有强大的UI制作能力。但是想要学好QML,还需要一些细节和技巧的掌握。本篇文章将为你提供完整的QML知识体系,让你成为Qt的UI魔法师!

BenBierBa的博客 2万+

SWAT模型非点源模拟原理

目录引言模型概述非点源污染模拟原理物质迁移内容过程营养物农药病原菌运移河道水质模型营养元素的地表水体循环河道水质模拟藻类模拟氮元素磷元素生化需氧量及溶解氧重金属的运移蓄水体水质模拟 引言 今天无意接触到这一块,就记录下来了。 模型概述 1、流域中非点源污染的来源主要是农业化肥和农药的施用。 2、氮、磷等营养物和农药的迁移和转化取决于化合物在土壤环境中经历的转化过程。 3、SWAT模型可以模拟水文相应单元内氮、磷完整的营养物循环过程和任何一种农药的降解过程。 4、SWAT模拟流域内泥沙、藻类、溶解氧、有机污染

DoWayChan的博客 4877

分布式事务简谈

分布式事务起源 分布式事务工作机制 2段提交 2PC

点火三周的专栏 1555

【STM32】STM32F407实现简单的Modbus协议

1.ModBus协议简介 MODBUS协议是一种串行通信协议,由Modicon公司(施耐德公司前身)发表,由于其公开发表且无版权要求,易于部署和维护,在工业界广泛应用。MODBUS采用主从通信(Master/Slave),MODBUS有三种报文格式:ASCII、RTU、TCP,本文主要讨论RTU。 如下图所示,串行通信上的MODBUS协议主要由地址,功能码,数据,CRC校验四部分数据帧构成。主机和从机的串行通信设备要求一致,参数要求一致,即假设使用串口,主从机波特率,奇偶校验...

BadBoyHolly的博客 8184

分布式事务的七种实现方式

文章目录一、前言二、强一致性、弱一致性、最终一致性三、从事务到分布式事务3.1 从事务到分布式事务3.2 分布式事务的实现方式3.2.1 两阶段提交 实现分布式事务3.2.2 三阶段提交 实现分布式事务3.2.3 TCC(Try尝试、Confirm确认、Cancel取消)实现分布式事务3.2.4 最大努力通知 实现分布式事务(略,有单独博客)3.2.5 MySQL基于XA 实现分布式事务(略,有单独博客)3.2.6 ebay本地消息表(ebay研发出的)实现分布式事务3.2.7 半消息/最终一致性(Rock

毛毛的专栏 1万+

【蓝牙专题】HCI协议解析

一、概念: 很多人接触蓝牙,是从HCI开始,因为HCI是主机控制接口协议(Host Controller Interface),蓝牙命令通过HCI来发送到Controller; 1、架构 如下图,HCI通过物理接口(USB、UART等)或虚拟接口,传递数据到Controller,Controller也通过同样的接口发送接收数据,这里注意到HCI层是在L2CAP层之下,LMP层之上; HCI

蚂蚁的专栏 5069

从零搭建智能车竞赛卡丁车:自动驾驶科目中的锥桶识别与路径规划实战教程

本文提供了一份从零搭建智能车竞赛卡丁车的实战教程,重点解析了自动驾驶科目中的核心环节:锥桶识别与路径规划。内容涵盖硬件选型、传感器部署、基于单目视觉的识别算法,以及适用于嵌入式平台的轻量级路径规划与跟踪策略,旨在帮助参赛者与爱好者系统掌握关键技术,完成稳定可靠的自动驾驶系统搭建。

lg888的博客 1166

保证分布式系统数据一致性的6种方案

编者按:本文由「高可用架构后花园」群讨论整理而成,后花园是一个面向架构师的增值服务,如需了解,请关注「高可用架构」后回复 VIP有人的地方,就有江湖有江湖的地方,就有纷争...

weixin_45583158的博客 1万+

uniapp [全端兼容] - 实现接入使用天地图及卫星视图切换功能,在国家天地图上自由切换地图显示类型(卫星视图/地形视图/卫星混合/地形混合/普通视图)天地图切换视图显示改成卫星风格,切换地图图层

uni-app,h5移动端网页,微信小程序,支付宝小程序,Android安卓,苹果ios,app,nvue,天地图,视图,卫星,地图类型切换,uniAPP天地图,改成卫星视角,在线地图切换,来回切换卫星图,天地图如何实现来回切换卫星图,地形图,卫星视图,VUE3引入天地图卫星版,详细教程示例源码代码,天地图切换卫星用什么api,卫星视角API方法,vue3卫星天地图,能改地图的显示方式,vue3中使用天地图自定义样式切换地图图层,切换报错,加载出错,卫星图太卡,地图图层更换,vue3安装集成天地图详细示例源

🏆 前端领域优质创作者 1万+

分布式的一些知识点

拜占庭容错(Byzantine Fault Tolerance,BFT)是分布式系统中处理任意类型故障(包括恶意行为)的一种机制。该概念来源于“拜占庭将军问题”,描述了一组将军如何通过消息传递达成一致,尽管其中一些将军可能会故意传递错误信息。Raft协议是一种一致性算法,旨在实现分布式系统中的日志复制和一致性,简化了Paxos协议的复杂性。Raft通过选举机制、日志复制和安全性保障,提供了一种易于理解和实现的一致性解决方案。

远方雪的专栏 1080

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Java-分布式架构知识点

领域驱动设计提供了一套完整的理论体系,帮助我们应对复杂业务系统的开发。关键点如下:领域和子域:明确系统边界,按业务模块划分。限界上下文:定义领域模型的边界,与微服务对应。领域对象:实体与值对象结合,贫血与充血模式各有应用场景。聚合:体现整体与部分的关系,聚合根统一管理。工厂与仓库:分别负责对象的创建和持久化。

来自ZackZhou的善意 782

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

【温故知新】-分布式微服务相关知识点梳理

1.什么是分布式,微服务,他们之间有什么区别? 2.

老汉健身的博客 689

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

分布式面试核心知识点

一、负载均衡随机算法 1.普通随机算法: 假设有十台服务器 public class ServersIp { public static final List<String> list = Arrays.asList( "192.168.000.1", "192.168.000.2", "192.168.000.3", "192.168.000.4", "19

qq_31374621的博客 680

一眼就会的知识点还怕做不好分布式架构?

21世纪以来,大规模分布式系统、云计算和云原生技术飞速发展,在短短20年间就成为各大企业信息技术基础架构的核心基石。 企业迈向分布式的根本原因包括: 移动互联网时代,各大企业每天都在和巨大的流量和爆炸性增长的数据打交道; 摩尔定律的失效,使得提升单机性能会产生很高的成本,同时网络速度越来越快,意味着并行化程度只增不减; 此外,许多应用都要求7×24小时可用,因停电或维护导致的服务不可用,变得越来越让人难以接受; 最后,经济全球化也导致了企业必须构建分布在多台计算机甚至多个地理区域的系统。 相较于单

m0_67645544的博客 405

分布式缓存基本知识点

分布式缓存基本知识点(一)分布式缓存之Redis切片集群基础切片hash环hash环进阶 分布式缓存首先是缓存,一种性能很好但是相对稀缺的资源。它的使用主要意义在于服务更多的用户,即解决高并发的问题,下面将围绕分布式缓存如何解决高并发问题来进行详细的理解。 分布式缓存之Redis Redis集群是最常见的分布式缓存策略,它在高并发的场景下往往是采用多个Redis节点来分担服务器的压力,相应的也存在多种组建集群的方式:主从复制、哨兵模式、Redis-Cluster集群、切片模式。在实际应用 Redis 时,

weixin_44140557的博客 6021

Java分布式模式重要的两个知识点(分布式缓存和高可用)

Java分布式模式下两个重要的知识点:分布式缓存和高可用 Java大型高性能服务采用分布式架构,其中分布式缓存是其中重要措施,有一种说法叫“缓存为王”,缓存是为了解决高并发,所以这个知识点也可以称为高并发,在这里我们就称为分布式缓存吧。 分布式缓存有几个概念: 磁盘缓存,也叫文件缓存(如:Ehcache,GuavaCache)常见于:CDN缓存,反向代理缓存 内存缓存(如:Memcache...

Frank浩的博客 903

Erlang分布式编程知识点

1,什么是分布式程序?  Erlang分布式程序是设计用来在网络计算机上运行并且只可以通过消息传递来协调活动  2,为啥要写分布式程序?  1) 性能  通过将程序的不同部分分布到不同计算机来并行运行,以此提升性能(适用于密集型、CPU是瓶颈的计算)  2) 可靠性  通过将程序分布来构建容错系统,以此提升可靠性。如果一台机器失败了,我们可以在另一台机器上继续计算  3) 伸缩性

zyhserry的专栏 1328

分布式缓存知识点总结

(面试题)你知道哪些分布式缓存,如果要你设计一个分布式缓存,你会怎么去设计?答:主要有Memcached和Redis。我使用Redis来做分布式缓存。 刚开始对Redis的操作都是单机版,虽然Redis的速度很快,但是在特别高的并发下,Redis也有性能瓶颈。Redis中的数据都放在内存里面,内存能有多大呢?64个G,已经很大了,64G都放满了呢?还能放吗?可以,内存放满了会放在硬盘中的虚拟内存...

lz1170063911的博客 1万+

分布式基础知识点

水一期

weixin_50216991的博客 344

深度解剖高级架构及分布式各大知识点

学习高级架构及分布式,能给你带来什么好处? 1.降低耦合度,增删一个功能,不会影响其它功能模块 2.因为优点1的存在,对于团队来说,可以更好的分配开发任务,比如各个团队负责一个独立的模块,开发完成后,只需要利用webservice服务的形式将模块的功能以API的形式开放出来 提升高级架构设计能力 通过学习一下高级架构是一条非常不错的架构师之路,比起你去看市面上的高级架构的书籍,学到的架构原理要更丰富更有深度。 提升自己在部门团队的技术影响力 你所在的部门团队如果使用了高级架构等方面的知识,必然需

yoyo31的博客 218

分布式知识点总结

理解分布式锁 分布式id要求 全局唯一性:不能出现重复的ID号,既然是唯一标识,这是最基本的要求。 趋势递增:在MySQL InnoDB引擎中使用的是聚集索引,由于多数RDBMS使用B-tree的数据结构来存储索引数据,在主键的选择上面我们应该尽量使用有序的主键保证写入性能。 单调递增:保证下一个ID一定大于上一个ID,例如事务版本号、IM增量消息、排序等特殊需求。 信息安全:如果ID是连续的,恶意用户的扒取工作就非常容易做了,直接按照顺序下载指定URL即可;如果是订单号就更危险了,竞对可以直接知道我们一

liuerchong的博客 174
上一篇: 学习各种树
下一篇: 知识点
big muscle
博客等级 码龄11年 145粉丝 71原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值