1. 本地锁 常用的即 synchronize 或 Lock 等 JDK 自带的锁,只能锁住当前进程,仅适用于单体架构服务。 而在分布式多服务实例场景下必须使用分布式锁 哦哟!才知道,原来大厂的Redis分布式锁都这么设计 2 分布式锁 2.1 分布式锁的原理 厕所占坑理论 可同时去一个地方“占坑” ...
分类:
其他好文 时间:
2021-05-24 09:06:33
阅读次数:
0
一、使用Apache ab模拟并发压测 1、压测工具介绍 $ ab -n 100 -c 100 http://www.baidu.com/ -n表示发出100个请求,-c模拟100个并发,相当是100个人同时访问。 还可以这样写: $ ab -t 60 -c 100 http://www.baidu ...
分类:
编程语言 时间:
2021-05-24 05:16:43
阅读次数:
0
redis一个命令setnx SETNX 是『SET if Not eXists』(如果不存在,则 SET)的简写 将 key 的值设为 value ,当且仅当 key 不存在. 返回值: 设置成功,返回 1 。 设置失败,返回 0 。 如下思路是设置一个过期锁。但是实际开发中这个过期时间很难判断, ...
分类:
其他好文 时间:
2021-04-27 14:41:24
阅读次数:
0
通过对 Zookeeper 中丰富的数据节点进行交叉使用,配合 Watcher 事件通知机制,可以非常方便的构建一系列分布式应用中涉及的核心功能,比如 数据发布/订阅、负载均衡、命名服务、分布式协调/通知、集群管理、Master 选举、分布式锁和分布式队列 等功能 1. 数据发布/订阅 当某些数据由 ...
分类:
其他好文 时间:
2021-04-20 15:29:56
阅读次数:
0
zookeeper概述: zookeeper是一个开源的分布式协调服务,提供分布式数据一致性解决方案,分布式应用程序可以实现数据发布订阅、负载均衡、命名服务、集群管理分布式锁、分布式队列等功能。 zookeeper提供了分布式数据一致性解决方案,那什么是分布式数据一致性?首先我们谈谈什么叫一致性? ...
分类:
其他好文 时间:
2021-04-07 11:43:05
阅读次数:
0
package com..zookeeper.GWdemo; import org.apache.curator.framework.CuratorFramework; import org.apache.curator.framework.CuratorFrameworkFactory; impo ...
分类:
其他好文 时间:
2021-04-02 13:11:19
阅读次数:
0
基于redisson实现分布式锁 一、上官网 https://redisson.org/ 二、pom文件引入依赖 <dependency> <groupId>org.redisson</groupId> <artifactId>redisson</artifactId> <version>3.11. ...
分类:
其他好文 时间:
2021-03-29 12:14:25
阅读次数:
0
前言 日常开发中,秒杀下单、抢红包等等业务场景,都需要用到分布式锁。而Redis非常适合作为分布式锁使用。本文将分七个方案展开,跟大家探讨Redis分布式锁的正确使用方式。如果有不正确的地方,欢迎大家指出哈,一起学习一起进步。 公众号:捡田螺的小男孩 什么是分布式锁 方案一:SETNX + EXPI ...
分类:
其他好文 时间:
2021-03-09 13:12:05
阅读次数:
0
四、分布式锁 传统的锁可解决在一台服务器上多个线程之间的并发冲突,但有些场景下多台服务器需要进行同一操作,这时为了协调多台服务器就需要分布式锁(由第三方提供锁)。分布式锁常用的是两种实现方式:使用Redis或Zookeeper。 4.1Redis自带的原语 Redis是一个key value数据库, ...
分类:
其他好文 时间:
2021-03-01 13:19:18
阅读次数:
0
提起来锁,可能第一个念头就是在想是不是要使用 synchronized。但是synchronized一般都是使用在一个服务器当中。 当多个服务器的时候该如何使用,能否保证锁住的东西起作用吗? 锁,很显而易见,就是需要排队去解决,开锁解锁。 一. 思考 按照这个思路,那么分布式锁是不是也是一样,锁定某 ...
分类:
其他好文 时间:
2021-02-22 12:39:13
阅读次数:
0