分布式

Redisson源码解读-公平锁

前言 我在上一篇文章聊了Redisson的可重入锁,这次继续来聊聊Redisson的公平锁。下面是官方原话: 它保证了当多个Redisson客户端线程同时请求加锁时,优先分配给先发出请求的线程。所有请求线程会在一个队列中排队,当某个线程出现宕机时,Redisson会等待5秒后继续下一个线程,也就是说 ... »

konghuanxi

Redisson分布式锁的源码解读分享

目录 前言 前置知识 分布式锁的思考 Redis订阅/发布机制 Redisson 加锁 订阅 解锁 看门狗 前言 Redisson是一个在Redis的基础上实现的Java驻内存数据网格(In-Memory Data Grid)。Redisson有一样功能是可重入的分布式锁。本文来讨论一 »

Redisson源码解读-分布式锁

前言 Redisson是一个在Redis的基础上实现的Java驻内存数据网格(In-Memory Data Grid)。Redisson有一样功能是可重入的分布式锁。本文来讨论一下这个功能的特点以及源码分析。 前置知识 在讲Redisson,咱们先来聊聊分布式锁的特点以及Redis的发布/订阅机制, ... »

konghuanxi

第2-1-1章 FastDFS分布式文件服务背景及系统架构介绍

1 背景 1.1 为什么需要分布式文件服务 1.1.1 单机时代 初创时期由于时间紧迫,在各种资源有限的情况下,通常就直接在项目目录下建立静态文件夹,用于用户存放项目中的文件资源。如果按不同类型再细分,可以在项目目录下再建立不同的子目录来区分。例如:resources\static\file、res ... »

分布式事务框架 Seata 入门案例

1. Seata Server 部署 Seata分TC、TM和RM三个角色,TC(Server端)为单独服务端部署,TM和RM(Client端)由业务系统集成。 首先,下载最新的安装包 也可以下载源码,然后本地编译。最新的版本是1.5.2 下载后的启动包(或者源码)中有个scripts目录,里面有各 ... »

cjsblog Seata

redisson分布式限流RRateLimiter源码解析

目录 分布式限流-单位时间多实例多线程访问次数限制 1.简单使用 2. 实现限流redisson使用了哪些redis数据结构 3. 超过10s,我再次获取一个令牌,数据结构发生的变化 4. 源码浅析 分布式限流-单位时间多实例多线程访问次数限制 接前面聊一聊redisson及优雅实现 »

RDD(弹性分布式数据集)及常用算子

RDD(弹性分布式数据集)及常用算子 RDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是 Spark 中最基本的数据 处理模型。代码中是一个抽象类,它代表一个弹性的、不可变、可分区、里面的元素可并行 计算的集合。 弹性 存储的弹性:内存与磁盘的自动切换; 容 ... »

bfy0221 Spark

使用Zookeeper实现分布式锁

目录 什么是临时顺序节点? Znode分为四种类型 1.持久节点 (PERSISTENT) 2.持久节点顺序节点(PERSISTENT_SEQUENTIAL) 3.临时节点(EPHEMERAL)  4.临时顺序节点(EPHEMERAL_SEQUENTIAL)  Zookeeper分布式锁的原理 »

分布式ID生成方案总结整理

1、为什么需要分布式ID? 对于单体系统来说,主键ID可能会常用主键自动的方式进行设置,这种ID生成方法在单体项目是可行的,但是对于分布式系统,分库分表之后,就不适应了,比如订单表数据量太大了,分成了多个库,如果还采用数据库主键自增的方式,就会出现在不同库id一致的情况,虽然是不符合业务的 2、业务 ... »

mzq123

Go语言实战之实现一个简单分布式系统

目录 引子 思路 实战 节点通信 主节点 工作节点 将它们放在一起 代码效果 总结 引子 如今很多云原生系统、分布式系统,例如 Kubernetes,都是用 Go 语言写的,这是因为 Go 语言天然支持异步编程,而且静态语言能保证应用系统的稳定性。笔者的开源项目 Crawlab 作为 »

从小白到架构师(3): 揭开分布式数据库的面纱

10+ 图解浅显易懂、图文并茂的讲述从分库分表到高可靠、高性能分布式数据库之路上的技术要点,图文结合、形象生动的讨论分布式事务、Gossip 协议、Raft 协议的思路与逻辑。 ... »

Finley

docker swarm快速部署redis分布式集群的详细过程

目录 环境准备 Docker 搭建Swarm集群 打开防火墙(Swarm需要) 创建Swarm 加入Swarm 服务约束 单机集群 创建容器 启动容器 进入容器启动集群 分布式集群 部署 docker compose.yml wait-for-it.sh redis-start.sh »

docker swarm快速部署redis分布式集群

环境准备 四台虚拟机 192.168.2.38(管理节点) 192.168.2.81(工作节点) 192.168.2.100(工作节点) 192.168.2.102(工作节点) 时间同步 每台机器都执行 yum install -y ntp cat <<EOF>>/var/spool/cron/ro ... »

hyx1229

Paxos分布式系统共识算法?我愿称其为点歌算法…

原创:微信公众号 码农参上,欢迎分享,转载请保留出处。 哈喽大家好啊,我是Hydra。 分布式系统共识算法Paxos相信大家都不陌生,它被称为最难理解的算法不是没有道理的,首先,它的发表之路就充满了坎坷。 1990年,莱斯利·兰伯特大佬写了一篇论文,举了一个城邦选举的例子来介绍Paxos算法,然而大 ... »

trunks2008

一种基于柔性事务的分布式事务解决方案设计探究

1 背景 市面上常见的有,2pc/3pc、tcc、saga等常见的分布式事务解决方案,但是实际实施起来框架比较重,设计开发比较繁琐,不易于快速开发上手。本文提供一种基于柔性事务设计的简单易上手的分布式事务设计方案,用于解决常见的分布式事务常见场景。 2 常见分布式事务场景 2.1 同步场景 常见的场 ... »

MassTransit | .NET 分布式应用框架

引言 A free, open-source distributed application framework for .NET. 一个免费、开源的.NET 分布式应用框架。 -- MassTransit 官网 MassTransit,直译公共交通, 是由Chris Patterson开发的基于消 ... »

sheng-jie

云原生分布式 PostgreSQL+Citus 集群在 Sentry 后端的实践

优化一个分布式系统的吞吐能力,除了应用本身代码外,很大程度上是在优化它所依赖的中间件集群处理能力。如:kafka/redis/rabbitmq/postgresql/分布式存储(CephFS,JuiceFS,C urve,Longhorn)等集群的处理能力。 分布式存储集群(Longhorn) 这里 ... »

hacker-linner

分布式之计算高性能

@ 一、计算高性能的概念 概念 计算高性能指的是系统中的接口高性能;如图: 二、PPC方案 [懒加载] 概念 PPC方案也称为进程建立连接方案;如图: 以查询商品为场景 当客户端发起请求到服务端,父进程接收客户端发过来的请求,再将请求转给子进程进行处理业务逻辑[读数据,写数据],处理完成后再返回客户 ... »