Redis
明天更新
这个作者很懒,什么都没留下…
展开
-
Redis为什么使用单线程?
3、工作线程单线程,io多线程,最大化cpu利用率。1、简化了并发控制,避免多线程死锁。2、保证了原子性和数据的一致性。原创 2024-06-25 17:11:34 · 121 阅读 · 0 评论 -
Redis防止缓存穿透和接口的幂等性!!!
场景:我们在访问商品详情页面的时候,会通过商品的id去查询商品的详细信息,这时候我们的接口就会暴漏,为防止缓存穿透,我们通过reids的 实现了接口的幂等性。原创 2024-05-24 19:51:29 · 160 阅读 · 0 评论 -
lua脚本的简单使用!!!
【代码】lua脚本的简单使用!!!原创 2024-03-31 14:59:31 · 312 阅读 · 0 评论 -
Redis主从同步机制!!!
4、从服务器接收到这个rdb文件,然后加载到内存;之后主服务器会将刚刚在缓存区的命令同步过来,从服务器就会执行这些命令。2、主数据库接收到同步命令后,会执行bgsave命令,在后台生成一个rdb文件,并使用一个缓冲区记录从现在开始执行的所有写命令;3、当主服务器执行完bgsave命令后,主服务器会将bgsave命令生成的rdb文件发送给从服务器;5、以上处理之后,之后主数据库每执行一个写命令,都会将被执行的写命令发送给从数据库。1、从服务器向主服务器发送同步命令sync;原创 2024-03-30 08:39:24 · 130 阅读 · 0 评论 -
Redis 和 Mysql 数据库数据如何保持一致性????
我们在实际项目中经常会使用到Redis缓存用来缓解数据库压力,但是当更新数据库时,如何保证缓存及数据库一致性,一般我们采用延时双删策略。目前系统中常用的做法是一个查询接口,先查询Redis,如果不存在则查询数据库,并将结果放入到Redis中。为什么是删除缓存,而不是更新缓存呢?主要是如果缓存的内容是带有树型结构或者List,Map,那么更新其中一个内容相对较慢。本文所讲操作,均是按照如果缓存不存在,查询数据库后,再放入Redis。原创 2024-03-30 08:38:59 · 397 阅读 · 0 评论 -
Redis集群!!!
Redis提供了多种集群模式以适应不同场景下的高可用性和水平扩展需求。原创 2024-03-30 08:38:37 · 320 阅读 · 0 评论 -
Redis是单线程,但为什么快???
4、采用了非阻塞I/O多路复用机制 epool。2、单线程操作,避免了频繁的上下文切换。3、合理高效的数据结构。原创 2024-03-30 08:37:58 · 132 阅读 · 0 评论 -
Redis 过期删除策略 And 内存淘汰策略 !!!
1、:放任键过期不管,但是每次从键空间中获取键时,都检查取得的键是否过期,如果过期的话就删除该键,如果没有过期就返回该键。2、:每隔一段时间程序就对数据库进行一次检查,删除里面的过期键。至于要删除多少过期键,一级哟啊检查多少个数据库,则有算法决定。原创 2024-03-29 16:58:39 · 517 阅读 · 0 评论 -
Redis自定义序列化工具,解决乱码问题!!!
我们在存取Redis数据时会遇到以下情况:出现了乱码问题。原创 2024-03-29 08:52:33 · 219 阅读 · 0 评论 -
Redis慢日志!!!
用途:系统优化,将执行较慢的sql记录下来,然后对其进行优化。原创 2024-03-28 22:01:46 · 623 阅读 · 0 评论 -
Redis常用命令!!!
1、set 设置单个key的value2、mset 设置多个key的value3、get 获取单个key的值4、mget 获取多个key的值5、decr 将 key 中储存的数字值减一6、incr 将 key 中储存的数字值增一7、decrby 将 key 所储存的值减去减量 decrement8、incrby 将 key 所储存的值加上增量 increment。9、setex 将值 value 关联到 key ,并将 key 的生存时间设为 seconds (以秒为单位)。10、setnx。原创 2024-03-25 20:39:19 · 493 阅读 · 0 评论 -
为什么要使用Redis!!!
2、Redis6.0之后工作线程是单线程(worker),串行化、原子操作。3、IO模型(基于linux内核的epoll模型),支撑高并发。5、具有本地方法,计算向数据移动。(a,b)=> 交集。6、二进制安全,Value最大512M。数据库,快,很快.......4、kv模型,v具有类型结构。原创 2024-03-25 10:00:52 · 262 阅读 · 0 评论 -
Redis到底是多线程还是单线程?
Redis6.0之后:Redis的IO线程是多线程,worker线程是单线程。Redis6.0之前:是单线程模式。原创 2024-03-25 10:03:09 · 284 阅读 · 0 评论 -
在百万keys的Redis里面,如何模糊查找某个key!!!
应该使用scan命令进行模糊查找,在百万keys进行模糊查找时,使用keys是不可取的,因为它可能会阻塞Redis线程,而每次调用scan命令都会返回一个新的游标和一批键名,可以分批查找,这样就不会造成Redis线程阻塞,提高了查询效率。问题:在百万keys的Redis里面,如何模糊查找某个key?原创 2024-03-25 19:46:36 · 238 阅读 · 0 评论