随笔分类 - Redis
摘要:Lua简介 Lua 是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放, 其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。 从 2.6版本 起, Redis 开始支持 Lua 脚本 让开发者自己扩展 Redis。 Redis中使用Lua的好处: 减少网络开销,在 L
阅读全文
摘要:分布式锁设计要考虑哪些 当我们在设计分布式锁的时候,我们应该考虑分布式锁至少要满足的一些条件,同时考虑如何高效地设计分布式锁,这里我认为以下几点是必须要考虑的。 互斥 在分布式高并发的条件下,我们最需要保证,同一时刻只能有一个线程获得锁,这是最基本的一点。 防止死锁 在分布式高并发的条件下,比如有个
阅读全文
摘要:只需要引入单个依赖就可以开始愉快地使用Lettuce: <dependency> <groupId>io.lettuce</groupId> <artifactId>lettuce-core</artifactId> <version>5.1.8.RELEASE</version> </depend
阅读全文
摘要:Redis的Java客户端很多,常用的有三种:Jedis、Redisson和lettuce。其中官方推荐使用Jedis和Redisson。 在企业中用的最多的就是Jedis。Jedis提供了完整Redis命令,而Redisson有更多分布式的容器实现。 Jedis <dependency> <gro
阅读全文
摘要:有一些公司使用的是redis单机服务,在实际的场景当中单一节点的redis容易面临风险。 机器故障。我们部署到一台 Redis 服务器,当发生机器故障时,需要迁移到另外一台服务器并且要保证数据是同步的。而数据是最重要的,如果你不在乎,基本上也就不会使用 Redis 了。 容量瓶颈。当我们有需求需要扩
阅读全文
摘要:########################################## 常规 ########################################## daemonize no # Redis默认是不作为守护进程来运行的。你可以把这个设置为"yes"让它作为守护进程来运行。
阅读全文
摘要:Redis的内存淘汰策略是指在Redis的用于缓存的内存不足时,怎么处理需要新写入且需要申请额外空间的数据。 Redis中共有下面八种内存淘汰策略: volatile-lru:设置了过期时间的key使用LRU算法淘汰; allkeys-lru:所有key使用LRU算法淘汰; volatile-lfu
阅读全文
摘要:对于Redis服务器来说,内存资源非常宝贵,如果一些过期键一直不被删除,就会造成资源浪费, 因此我们需要考虑一个问题:如果一个键过期了,它什么时候会被删除呢? 常见的删除策略 常见的删除策略有以下3种: 定时删除:在设置键的过期时间的同时,创建一个定时器,让定时器在键的过期时间来临时,立即执行对键的
阅读全文
摘要:Redis的特点 所有数据存储在内存中,高速读写; 提供丰富多样的数据类型:string、 list、hash、 set、 sorted set、bitmap、hyperloglog; 提供了 AOF 和 RDB 两种数据的持久化保存方式,保证了 Redis 重启后数据不丢失 Redis 的所有操作
阅读全文
摘要:Redis之所以速度这么快,是因为Redis是基于内存的数据库,进行读写操作时,redis都会先在内存中完成,然后定时的刷新到磁盘中去,RDB和AOF就是两种持久化内存中数据的方式。笼统来讲,RDB可以将某一时刻的所有数据写入硬盘中,相当于复制了一份数据;而AOF会在redis执行写命令时,将被执行
阅读全文
摘要:redis的客户端连接命令: #linux是redis-cli #普通环境 redis-cli.exe -h host -p port -a password #集群环境,否则报:(error) MOVED 6918 127.0.0.1:6381 redis-cli.exe -c -h host -
阅读全文