![](https://img-blog.csdnimg.cn/20190927151117521.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
redis分布式缓存
redis、缓存、分布式、集群
dandanforgetlove
这个作者很懒,什么都没留下…
展开
-
面试常问题汇总、redis 、 mangodb 、 memcache对比
redis 、 mangodb 、 memcache 都是NoSQLs数据库:非关系型数据库。mysql就是关系型数据库。 redis mongodb memcache 数据类型 五大类型 string、list、hash、sorted set 、set key-value 值可以是文档,数组及文档数组 key-value 线程 单核单线程 多线程 多核多线程 主要存储..原创 2020-06-28 18:50:30 · 2025 阅读 · 0 评论 -
redis的集群:主从复制、CAP、PAXOS、cluster分片集群01
单机、单点、单实例缺点: 1.单点故障 2.容量有限 3. 压力 强一致性 主从复制、读写分离会带来数据一致性问题 1.通过强一致性来解决,即主redis 进行阻塞,直到从redis写成功。 弱一致性 强一致性带来阻塞问题,可能会等待很久 1.通过异步方式解决强一致性问题,但是会丢失一部分数据 最终数据一致性 弱一致性会带来数据丢失问题 1.通过类似kafka 可靠集群来保证最终数据一致性 Redis使用默认的异步复制,其特点是低延迟和高性能 在使用 Redi...原创 2020-05-22 15:22:21 · 539 阅读 · 0 评论 -
redis的持久化RDB、fork、copyonwrite、AOF、RDB&AOF混合使用
RDB、AOF redis 持久化有两种方式 RDB 快照:性能上稍微好一些。 快照方式,即设定多久进行一次数据快照。 恢复数据比AOF快,但是丢失的数据会比AOF方式要多。文件提交比AOF小。数据集大的时候,会让redis的性能低于AOF方式 RDB bgsave规则: save 900 1 save 300 10 save 60 10000 只会保存一个dump.rdb。所以需要人工去考虑备份rdb文件。 AOF 文件:安全系数较高 aof:每次的操作都会进行记录。 fsyn...原创 2020-05-21 18:47:00 · 635 阅读 · 0 评论 -
redis的消息订阅、pipeline管道命令、事务、EX过期时间、缓存LRU
Redis 管道(Pipelining):一次请求/响应服务器能实现处理新的请求即使旧的请求还未被响应。这样就可以将多个命令发送到服务器,而不用等待回复,最后在一个步骤中读取该答复。 管道的作用,降低通信成本。 MULTI 标记一个事务块的开始。 随后的指令将在执行EXEC时作为一个原子执行。 为什么 Redis 不支持回滚(roll back) 如果你有使用关系式数据库的经验, 那么 “Redis 在事务失败时不进行回滚,而是继续执行余下的命令”这种做法可能会让你觉得有点奇怪。 以...原创 2020-05-21 15:58:54 · 489 阅读 · 0 评论 -
redis 中的 列表 lists、集合sets、散列hashes、有序集合sortedsets
List L 开头的命令,从左开始 ;R 开头的命令 ,从右边开始;B开头的命令,阻塞的。 redis 中的索引有两种,正向和反向。正向即从0到(n-1),反向则从 -1 到-n。 lpush lpush k1 a b c d e f g ,使用lrange查询下,发现,存储的顺序和我们插入的是相反的。所以lpush 是往左添加,添加a后,添加b 时是添加在a的左边了,即前面。 栈:同向命令,队列:反向命令。 lrange lrange key start end : 查询某个key 起...原创 2020-05-20 17:10:00 · 415 阅读 · 0 评论 -
redis 介绍及String 、bitmap 使用、key查找
表很大的时候,性能下降? 如果表有索引,增删改变慢,需要维护索引。 1.如果1个或少量查询以然很快 2.当并发或sql复杂会受硬盘带宽影响速度。 常识: 硬盘:寻址慢、带宽慢。 Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。 它支持多种类型的数据结构,如 字符串(strings), 散列(hashes), 列表(lists), 集合(sets), 有序集合(sorted sets) 与范围查询, bitmaps, hyperlo...原创 2020-05-20 14:24:43 · 819 阅读 · 0 评论 -
BIO、NIO、epoll、AIO
早期BIO ,blockingIO,阻塞IO。Linux下一切皆文件,socket即读文件描述符(fd)。当建立多个连接时,如下图。 例如fd 8 的client连接一直没返回,导致 read fd8会进行阻塞,一直等待返回。read fd9连接无法进行处理。 由于BIO 导致阻塞,进而演变成NIO。 开始进入NONBLOCK时代,非阻塞。还是多个连接。 非阻塞了,当多个连接来时,进行while 循环,循环调用 fd8 fd9 read,判断有没有返回,有就处理,没有继续循环。 ...原创 2020-05-20 09:48:24 · 420 阅读 · 0 评论