DeathWhispers

分布式事务的基础

数据库的 ACID 满足了数据库本地事务的基础,但是它无法满足分布式事务,这个时候衍生了 CAP 和 BASE 两个经典理论。 🦅 CAP 理论 CAP 定理,又被叫作布鲁尔定理。对于设计分布式系统来说(不仅仅是分布式事务)的架构师来说,CAP 就是你的入门理论。 C (一致性):在分布式系统中的所有数据备份,在同一时刻是否同样的值。(等同于所有节点访问同一份最新的数据副本) ...

分布式事务如何处理怎么保证事务一致性?

强一致性:每一笔交易都保证事务一致 最终一致性 误区:认为 分布式事务 = Seata 分布式事务:将不同节点上的事务操作,提供操作原子性保证。同时成功或者同时失败。第一个要点:就是要在原本没有直接关联的事务之间建立联系1、Http连接:尽最大努力通知。– 事后补偿2、MQ:事务消息机制。3、Redis:opKey-> 事务A 开始时 opKey+1,事务B 开始时 opKey ...

分布式事务分类:柔性事务和刚性事务

分布式场景下,多个服务同时对服务一个流程,比如电商下单场景,需要支付服务进行支付、库存服务扣减库存、订单服务进行订单生成、物流服务更新物流信息等。如果某一个服务执行失败,或者网络不通引起的请求丢失,那么整个系统可能出现数据不一致的原因。 上述场景就是分布式一致性问题,追根到底,分布式一致性的根本原因在于数据的分布式操作,引起的本地事务无法保障数据的原子性引起。 分布式一致性问题的解决思路...

修改配置不重启Redis会实时生效吗?

针对运行实例,有许多配置选项可以通过 CONFIG SET 命令进行修改,而无需执行任何形式的重启。从 Redis 2.2 开始,可以从 AOF 切换到 RDB 的快照持久性或其他方式而不需要重启 Redis。检索 CONFIG GET * 命令获取更多信息。但偶尔重新启动是必须的,如为升级 Redis 程序到新的版本,或者当你需要修改某些目前 CONFIG 命令还不支持的配置参数的时候。

使用“反向代理服务器”的优点是什么?

反向代理服务器可以隐藏源服务器的存在和特征。它充当互联网云和 Web 服务器之间的中间层。这对于安全方面来说是很好的,特别是当我们使用 Web 托管服务时。 这里,先不考虑负载均衡。 🦅 什么是正向代理? 一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得...

你们公司是如何处理分布式事务的?

如果你真的被问到,可以这么说: 我们某某特别严格的场景,用的是 TCC 来保证强一致性。 你找一个严格资金要求绝对不能错的场景,你可以说你是用的 TCC 方案。 然后其他的一些场景,基于阿里的 RocketMQ 来实现了分布式事务。 如果是一般的分布式事务场景,订单插入之后要调用库存服务更新库存,库存数据没有资金那么的敏感,可以用可靠消息最终一致性方案。

什么是消息重试?如何实现?

什么是消息重试?如何实现? 消息重试,Consumer 消费消息失败后,要提供一种重试机制,令消息再消费一次。 Consumer 会将消费失败的消息发回 Broker,进入延迟消息队列。即,消费失败的消息,不会立即消费。 也就是说,消息重试是构建在定时消息之上的功能。 🦅 消息重试的主要流程 Consumer 消费失败,将消息发送回 Broker 。 Broke...

什么是微服务?

什么是微服务? 一、微服务介绍 1. 什么是微服务 在介绍微服务时,首先得先理解什么是微服务,顾名思义,微服务得从两个方面去理解,什么是”微”、什么是”服务”, 微 狭义来讲就是体积小、著名的”2 pizza 团队”很好的诠释了这一解释(2 pizza 团队最早是亚马逊 CEO Bezos提出来的,意思是说单个服务的设计,所有参与人从设计、开发、测试、运维所有人加起来 只需要2个披萨就...

什么是动态资源、静态资源分离?

什么是动态资源、静态资源分离? 动态资源、静态资源分离,是让动态网站里的动态网页根据一定规则把不变的资源和经常变的资源区分开来,动静资源做好了拆分以后我们就可以根据静态资源的特点将其做缓存操作,这就是网站静态化处理的核心思路。 动态资源、静态资源分离简单的概括是:动态文件与静态文件的分离。 🦅 为什么要做动、静分离? 在我们的软件开发中,有些请求是需要后台处理的(如:.jsp,.do...