`

分布式锁、会话、事务等学习记要

阅读更多

1.zookeeper使用场景

分布式协调、分布式锁、元数据/配置管理、HA高可用场景

 

2.Redis分布式锁

普通实现方法(key+随机值)缺陷:redis失效时会导致锁失效

RedLock算法

 

3.zookeeper分布式锁

 

4.分布式session

Tomcat+Redis, Spring session+Redis

 

5.分布式事务

XA(两阶段提交)方案-可通过Spring+JTA实现、

TCC(try-confirm-cancel)方案、

本地消息表方案、

 可靠消息最终一致性方案、

 最大努力通知方案

 

6.分库分表

proxy层中间件:cobar、atias、mycat(当前较活跃、有运维成本、适合大公司)

client层中间件:TDDL、sharding-jdbc(当前较活跃、不需要部署代理层、适合中小型公司)

垂直拆分、水平拆分

不停机双写方案

动态扩容缩容

全局ID:

单独数据库自增ID(适用于:并发低、数据量大)、

UUID(缺点:太长、不适合主键)、

系统当前时间(需要时间戳+业务字段组合而成)、

snowflake算法(开源分布式ID生成算法、64位long型)

 

8.读写分离、MySQL主从复制、MySQL主从延迟导致的问题

 

9.高并发系统架构

系统拆分+缓存+MQ+分库分表+读写分离+ES

 

 

——来源于石杉码农学院

 

分享到:
评论

相关推荐

    记录redisson实现redis分布式事务锁

    本篇文章将详细探讨如何使用Redisson实现Redis分布式事务锁,以及在Spring Boot环境中如何进行集成。 首先,Redis作为一个内存数据库,其高速读写性能使其成为实现分布式锁的理想选择。分布式锁的主要作用是在多...

    分布式相关面试题汇总:分布式锁、分布式事务、分布式缓存、分布式ID

    面试中,分布式锁、分布式事务和分布式缓存等概念是考察开发者技术能力的重要方面。下面将对这些主题进行详细阐述。 分布式锁是解决分布式环境下的资源争抢问题的关键工具。在单机系统中,锁的实现相对简单,但在...

    医院HIS系统,支持多机构,微服务架构、支持分布式事务、分布式锁

    医院HIS系统,支持多机构,微服务架构、支持分布式事务、分布式锁,后端springcloud+nacos+pgsql,配前台vue3+ts+elmentplus,

    分布式锁与信号量微服务架构中基于MQ的分布式事务解决方案.zip

    分布式锁与信号量微服务架构中基于MQ的分布式事务解决方案分布式锁与信号量微服务架构中基于MQ的分布式事务解决方案分布式锁与信号量微服务架构中基于MQ的分布式事务解决方案分布式锁与信号量微服务架构中基于MQ的...

    Java基于redis实现分布式锁代码实例

    Java基于Redis实现分布式锁代码实例 ...但是,需要注意的是,在实现分布式锁时,需要考虑到各种可能的异常情况,例如服务器挂掉等,并且需要对分布式锁进行优化,例如加过期时间,使用原子操作等。

    分布式锁处理步骤

    在Oracle数据库中,分布式事务处理可能会导致分布式锁的存在,这些锁如果不正确地处理,可能会引起系统的性能问题甚至阻塞。以下是对分布式锁处理步骤的详细解释: 第一步:检查是否存在分布式锁 通过执行SQL查询`...

    C#实操控制并发之Lock和Redis分布式锁

    本文将深入探讨C#中如何使用Lock和Redis分布式锁来解决并发问题,以秒杀系统为例进行阐述。 首先,让我们理解什么是并发控制。并发控制是指在多线程环境下确保数据的一致性和完整性,防止多个线程同时访问同一资源...

    redis实现分布式锁,自旋式加锁,lua原子性解锁

    在分布式系统中,为了保证数据的一致性和安全性,分布式锁是一种常见的解决方案。Redis作为一个高性能的键值存储系统,常被用作实现分布式锁的工具。本文将深入探讨如何使用Redis实现分布式锁,以及如何利用自旋式...

    浅谈分布式锁

    为了实现最终一致性,分布式系统中常采用多种技术手段,包括分布式锁、分布式事务等。 分布式锁通常需要满足以下条件: 1. 可重入性:同一个线程可以多次获取同一把锁。 2. 性能要求:获取锁和释放锁的操作要高效,...

    C#.net Redis分布式锁源码实现

    在IT行业中,尤其是在大型...总结起来,C#.NET结合Redis实现分布式锁涉及到连接管理、命令使用、原子操作、锁的生命周期管理等多个方面。理解这些核心概念,并在实践中灵活应用,可以帮助构建高效、可靠的分布式系统。

    redis分布式锁工具类

    现在很多项目单机版已经不满足了,分布式变得越受欢迎,同时也带来很多问题,分布式锁也变得没那么容易实现,分享一个redis分布式锁工具类,里面的加锁采用lua脚本(脚本比较简单,采用java代码实现,无须外部调用...

    深入分析分布式锁的原理及特性.zip

    接下来,我们讨论分布式锁与事务的区别。事务是数据库系统中确保数据一致性的核心机制,它提供了ACID(原子性、一致性、隔离性和持久性)特性。而分布式锁则是在更高层次上对资源访问的控制,它并不保证数据的一致性...

    redis分布式锁.zip

    Redis 分布式锁是分布式系统中解决并发控制和数据一致性问题的一种常见机制。在大型分布式应用中,单机锁无法满足需求,因为它们局限于单个服务器。Redis 的高可用性和低延迟特性使其成为实现分布式锁的理想选择。...

    redisson实现分布式锁

    Redisson是一款功能丰富的Java客户端,它提供了对Redis服务器的全面支持,包括数据结构服务、分布式服务、锁服务等。在分布式系统中,锁是保证数据一致性的重要工具,而Redisson的分布式锁则为Java开发者提供了一种...

    zk使用curator实现分布式锁

    ZooKeeper是一个高度可靠的分布式协调服务,它提供了诸如分布式锁、队列和配置管理等核心功能。Curator则是Apache ZooKeeper的一个客户端库,它简化了ZooKeeper的使用,提供了丰富的工具和策略,使得开发人员能够更...

    基于 Redis 的分布式锁

    分布式锁的实现通常需要依赖一个可靠的外部协调系统,这样的系统可以是数据库、ZooKeeper、Redis等。 Redis作为一个开源的高性能键值存储系统,被广泛应用于实现分布式锁。Redis提供的命令操作简单且执行速度快,...

    使用ZooKeeper实现分布式锁

    同时,`distribute-lock`这个文件可能包含了具体的实现代码或示例,通过学习和理解这个文件,我们可以更深入地掌握如何在实践中运用ZooKeeper实现分布式锁。 总之,ZooKeeper的分布式锁机制为解决分布式环境下的...

    基于Redis的分布式锁的实现方案.pdf

    在分布式锁的设计中,需要满足高性能、避免死锁等基本要求。其中,高性能是指分布式锁不能成为系统的性能瓶颈;避免死锁是指拿到锁的节点挂掉不能导致其他节点永远无法继续。 在本文中,作者选择了Redis作为分布式...

    基于Redis方式实现分布式锁

    基于关系数据库实现分布式锁主要利用数据库本身的事务机制和锁定机制。在高并发场景下,这种方法可能因为数据库的I/O开销过大而不适用于大型项目。 #### 2. ZooKeeper 分布式锁 基于ZooKeeper实现分布式锁是通过...

    42_分布式锁是啥?对比下redis和zk两种分布式锁的优劣?.zip

    分布式锁是一种在分布式系统中实现同步访问资源的机制,它允许多个节点在同一时间对共享资源进行操作,而不会导致数据不一致或并发问题。在Java开发中,分布式锁的应用广泛,尤其是在微服务架构中,当服务间的通信...

Global site tag (gtag.js) - Google Analytics