在一些简单的业务场景下,其实不用考虑锁的重入、重试等问题,也很少需要考虑Redis主从切换,分布式锁失效。
那么一种最简单的分布式锁实现,其实就是Redis setNX, 其实已经能满足大多数场景了
直接上代码:
public class RedisD...
汪明鑫
2年前 (2023-02-07) 672浏览 0评论
0喜欢
no code say j8
先把代码fork过来
https://github.com/redis/redis
https://github.com/xinyeshuaiqi/redis
代码下载到本地
再安装一个c/c++开发工具 cl...
汪明鑫
2年前 (2023-02-07) 624浏览 0评论
1喜欢
前言
相信大多数老哥和我抱有同样的想法,redis key被淘汰是因为key新增导致内存不足,然后触发redis淘汰策略,
然而真相并非仅仅如此,在一次线上事故中大量redis key被淘汰,由此领略到redis的骚操作,不讲武德 …
背景
数百个API...
汪明鑫
4年前 (2020-11-30) 3087浏览 0评论
10喜欢
redisObject
创建一个键值对时,至少需要常见2个对象,一个对象用作键对象,一个对象用作值对象
每个对象都由redisObject表示,Redis存储的数据都使用redisObject来封装
typedef struct red...
汪明鑫
4年前 (2020-06-28) 843浏览 0评论
2喜欢
String
127.0.0.1:6379> set k1 99
OK
127.0.0.1:6379> get k1
"99"
127.0.0.1:6379> mset k2 2 k3 3
OK
127.0.0.1:6379> mget k1 k2 k3
...
汪明鑫
4年前 (2020-06-13) 785浏览 0评论
0喜欢
package pers.wmx.springbootfreemarkerdemo.service;
import java.util.List;
/**
* @author: wangmingxin03
* @date: 2020-06-09
*/
public in...
汪明鑫
4年前 (2020-06-09) 810浏览 0评论
0喜欢
1,丰富灵活的数据结构
2,基于内存
3,单线程,减少了多线程切换不必要的开销,不用考虑锁
4,IO多路复用,监听多个socket上产生的 【请求连接/读/写】事件,事件会被压入一个先进先出队列,事件处理器进行相应的处理
5,支持主从集群、哨兵集群、分片集群;可用性高,集群组成A...
汪明鑫
5年前 (2020-04-13) 771浏览 0评论
0喜欢
基于内存
redis是nosql(not only sql)的一种
redis是基于内存的,除了redis的持久化无须与磁盘打交道
基于内存的当然比基于磁盘要快,这也是redis 快的原因
丰富的数据结构
redis内置了丰富的数据结构,
string,list,h...
汪明鑫
5年前 (2020-03-03) 779浏览 0评论
0喜欢
过期策略
set时给key指定一个过期时间ttl
过期时间到了就会立即删除存储的key value以及对应的内存嘛
当然不是,redis的过期策略涉及到惰性删除和定期删除
定期删除
由于redis中的key不是过期就会马上触发删除,引入了一些机制,如定期删除
red...
汪明鑫
5年前 (2020-03-03) 801浏览 4评论
0喜欢
什么是lua
Lua是一个高效的轻量级脚本语言,用标准C语言编写并以源代码形式开放, 其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能
优势
减少网络开销:在Lua脚本中可以把多个命令放在同一个脚本中运行
原子操作:redis会将整个脚本作...
汪明鑫
5年前 (2019-12-10) 893浏览 0评论
0喜欢