文章目录1:什么是分布式2:分布式系统演变历史1:单一应用架构-ORM2:垂直应用架构3:分布式服务架构4:流动计算架构3:RPC1:什么叫RPC2:RPC基本原理 1:什么是分布式《分布式系统原理与范型》定义: “分布式系统是若干独立计算机的集合,这些计算机对于用户来说就像单个相关系统” ,分布式系统(distributed system)是建立在网络之上的软件系统。随着互联网的发展,网站应用
转载
2024-06-11 21:13:01
70阅读
分布式系统(distributed system)是建立在网络之上的软件系统。正是因为软件的特性,所以分布式系统具有高度的内聚性和透明性。因此,网络和分布式系统之间的区别更多的在于高层软件(特别是操作系统),而不是硬件。 分布式消息队列(MQ)为什么使用 MQ?异步处理 - 相比于传统的串行、并行方式,提高了系统吞吐量。应用解耦 - 系统间通过消息通信,不用关心其他系统的处理
转载
2024-06-25 18:26:41
85阅读
分布式架构概述分布式概念什么是分布式分布式与集群的关系计算机发展历史分布式架构发展淘宝 去IOE运动架构的发展演变过程什么是大型网站/架构?架构升级单机应用负载均衡数据库的高性能搜索引擎的升级增加缓存服务器数据库的水平垂直拆分抽离服务 减少冗余 中间采用webservice或者dubbo 分布式概念互联网架构的最大的两个特点:高并发,海量数据。 对于企业而言,用户数量是没有上限的。 单位时间内收
转载
2023-06-03 14:42:54
150阅读
一、RabbitMQ解决分布式事务思路:案例: 经典案例,以目前流行点外卖的案例,用户下单后,调用订单服务,让后订单服务调用派单系统通知送外卖人员送单,这时候订单系统与派单系统采用MQ异步通讯。
二、RabbitMQ解决分布式事务原理:采用最终一致性原理。需要保证以下三要素1、确认生产者一定要将数据投递到MQ服务器中(采用MQ消息确认机制)2、MQ消费者消息能够正确消费消息,采用手动ACK模式(注
转载
2024-01-30 00:23:35
121阅读
分布式事务就是要保证不同节点之间的数据一致性。常见的分布式事务解决方案1、2PC(二阶段提交)方案 - 强一致性2、3PC(三阶段提交)方案3、TCC (Try-Confirm-Cancel)事务 - 最终一致性4、Saga事务 - 最终一致性5、本地消息表 - 最终一致性6、MQ事务 - 最终一致性 《=====》基于 MQ 实现的分布式事务本地消息表-最终一致性消息的生产方,除了维护
转载
2024-01-29 11:35:36
53阅读
基于RocketMQ的分布式事务解决方案前言什么分布式事务?分布式事务产生的场景如何解决分布式事务RocketMQ 基本使用实操场景建表生产者消费者验证 前言什么分布式事务? 随着互联网的快速发展,软件系统由原来的单体应用转变为分布式应用,分布式系统会把一个应用系统拆分为可独立部署的多个服务,因此需要服务与服务之间远程协作才能完成事务操作,这种分布式系统环境下由不同的服务之间通过网络远程协作完成
转载
2024-06-26 10:01:26
126阅读
分布式消息队列RocketMQ一、RocketMQ简介RocketMQ(火箭MQ) 出自于阿里,后开源给apache成为apache的顶级开源项目之一,顶住了淘宝10年的 双11压力 是电商产品的不二选择 (略微有点夸张)1、MQ概述Message Queue,是一种提供消息队列服务的中间件,也成为消息中间件,是一套提供了消息生产、存储、消费全过程API的软件系统2、MQ用途(1)、限流削峰系统A
转载
2024-01-29 22:13:12
79阅读
在电商领域互联网下,基于CP的强一致性方案在数据库性能和系统处理能力会出现一定瓶颈。所以互联网更多采用柔性事务,柔性事务是遵循BASE理论来实现事务模型,有两个特性:基本可用,柔性状态。TCC补偿型方案TCC(Try-Confirm-Cancel)是一种比较成熟的分布式数据一致性解决方案,它实际上是把一个完整的业务拆分为如下三个步骤。Try ∶ 这个阶段主要是对数据的校验或者资源的预留。Confi
Kafka 消费者时 bootstrap.servers,也叫broker(IP、端口集群) group.id:GroupId是一种逻辑概念,用于将消费者归类为一个组。同一组内的多个消费者可以共同消费同一个Topic的数据,并保证每条消息只被组内的一个消费者消费。这是Kafka实现多个消费者同时消费一个Topic的核心机制 client.id:在Kafka中,消费者的client.id是一个用于标
转载
2023-11-08 19:13:22
69阅读
RocketMQ一、RocketMQ的顺序消息二、RocketMQ的单向发送(直接发送)三、RocketMQ的事务消息1.事务消息发送及提交:2.补偿流程:四、分布式事务的解决方案1、X/Open DTP分布式事务处理参考模型2、分布式事务的实现主要有以下 5 种方案:1.XA方案2.TCC 补偿方案3.本地消息异步确保4.可靠消息最终一致性方案(国内互联网)5.最大努力通知方案(也是保证最终一
转载
2024-02-05 13:18:32
125阅读
基于RocketMQ可以实现分布式事务的最终一致性解决方案,它使用TransactionMQProducer发送事务消息,事务消息的状态包括:Unknown 未知状态,初始发送的消息就是该状态,该状态下事务消息不会被消费者消费;Commit状态 提交状态,该状态下事务消息会被消费者消费;Rollback
转载
2024-06-24 08:27:12
88阅读
前言关于为什么要有分布式锁这个东西,欢迎阅读我的zk分布式锁的实现,介绍了单机高并发、分布式高并发的解决方案:用ZooKeeper实现分布式锁这里再切入本例将使用的场景模拟:商品秒杀,或者说高并发下,对于商品库存扣减操作。我用一个SpringBoot小项目模拟一下该操作。本例用到的技术栈:SpringBootRedisetcd在正式肝代码之前,先来对etcd分布式锁实现的机制和原理做一个了解。微服
由于工作的原因,近两年多的时间开始接触分布式系统,在学习分布式系统之前,我认为的分布式仅仅就是把系统模块化独立部署,模块化之间采用webservice等可远程调用的方法进行连接,共同协助完成一个实际的业务流程,当然了,分离带来的部署复杂度也增加了,但是毕竟是分布式系统架构,这个缺点还是可以接受的,类似这样的概念,在我的潜意识中存在的很多年
转载
2023-10-07 19:49:20
156阅读
随着计算机系统规模变得越来越大,将所有的业务单元集中部署在一个或若干个大型机上的体系结构,已经越来越不能满足当今计算机系统,尤其是大型互联网系统的快速发展,各种灵活多变的系统架构模型层出不穷。布式的处理方式越来越受到业界的青睐——计算机系统正在经历一场前所未有的从集中式向分布式架构的变革。集中式与分布式集中式系统所谓的集中式系统就是指由一台或多台主计算机组成中心节点,数据集中存储于这个中心节点中,
转载
2023-06-30 14:24:06
278阅读
一、MQ概述 介绍: MQ是一种提供
消息队列服务
的中间件,也称为消息中间件,是一套提供了消息生产、存储、消费全过程API
的软件系统。消息即数据。一般消息的体量不会很大。 用途: 1.限流
转载
2023-12-08 22:39:17
134阅读
分布式架构设计分布式理论与分布式架构设计理论1. 分布式架构介绍2.分布式理论2.1 数据一致性2.2 CAP定理3.分布式一致性协议4.分布式系统设计策略5. 分布式架构服务调用5.1 服务调用5.2 实现方式6.分布式服务治理6.1 服务协调6.2 服务削峰6.3 服务降级6.4 服务限流6.5 服务熔断6.6 服务链路追踪 分布式理论与分布式架构设计理论1. 分布式架构介绍通俗的理解,所谓
转载
2023-07-31 17:13:56
120阅读
一、分布式理论1.分布式架构系统回顾1.1. 分布式系统概念分布式系统是一个硬件与软件组件分布在不同的网络计算机上,彼此之间仅仅通过消息传递进行通信和协调的系统。分布式与集群的区别:集多个人在一起做同样的事情。分布式:多个人在一起做不同的事情。分布式系统的特点:分布性对等性:无主从关系并发性缺乏全局时钟故障总是会发生1.2. 分布式系统的发展阿里巴巴发起的"去 IOE"运动 (IOE 指的是
转载
2023-12-31 21:05:13
122阅读
前置知识:软件架构1.单体架构:所有的功能集中在一个项目内。优点:开发成本低、周期短、适合小项目。缺点:因为全部功能都集中在一个工程中,耦合性过高,不利于大型项目的开发、扩展和维护,而且技术栈受限只能使用一种语言开发。2.垂直架构:按照业务进行切割,形成小的单体项目。优点:技术栈可以扩展(不同的系统可以用不同的编程语言编写)。功能集中在一个项目中,不利于开发、扩展、维护。缺点:项目之间功能冗余、数
转载
2024-08-18 19:22:37
200阅读
一、应用架构演进2006年前比较流行的三种经典架构:LAMP架构(Linux + Apache + Mysql(读写分离) + Php(前后台界面和业务逻辑))MVC架构 ( springmvc/struts + spring + mybatis/hibernate + tomcat )EJB企业架构以上三种的共性:都是垂直应用架构。RPC架构:Remote Procedure Cal
转载
2024-02-21 21:24:52
78阅读
论文重读: Amazon Dynamo 马上要写开题报告了,初步打算会做分布式计算方面(或是某些人口中的云计算)的一些研究。之前也看了不少相关的论文,但基本上都是浑沦吞枣,不求甚解。之后在某搜索引擎公司呆了一段时间,对这方面又有了新的认识,所以结合公司遇到的问题,在细细研读一遍这个领域的一些重要的论文。今天看的是Amazon公开的一个分布式KV数据库Dynamo。互联网公司的大规模分布式计算系统