Redis

Redis Cluster集群详介绍和伪集群搭建

1什么是Redis-Cluster为何要搭建Redis集群。Redis是在内存中保存数据的,而我们的电脑一般内存都不大,这也就意味着Redis不适合存储大数据,适合存储大数据的是Hadoop生态系统的Hbase或者是MogoDB。Redis更适合处理高并发,一台设备的存储能力是很有限的,但是多台设备协同合作,就可以让内...

centos7安装配置redis

准备工作关闭防火墙systemctlstopfirewalld.service#停止firewallsystemctldisablefirewalld.service#禁止firewall开机启动firewall-cmd--state#查看默认防火墙状态(关闭后显示notrunning,开启后显示running)执行后...
代码星球·2020-12-15

为什么redis是单线程的以及为什么这么快?

转自:https://www.cnblogs.com/jichi/p/12790478.html官网的说法我们先来认真看一下官网的说法。翻译过来大意如下:CPU并不是您使用Redis的瓶颈,因为通常Redis要么受内存限制,要么受网络限制。例如,使用在一般Linux系统上运行的流水线Redis每秒可以发送一百万个请求,...

几率大的Redis面试题(含答案)

本文的面试题如下:Redis持久化机制缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级等问题热点数据和冷数据是什么Memcache与Redis的区别都有哪些?单线程的redis为什么这么快redis的数据类型,以及每种数据类型的使用场景,Redis内部结构redis的过期策略以及内存淘汰机制【~】Redis为什么是单线...

redis cluster slots数量 为何是16384(2的14次方)

  rediscluster集群通过分片的方式来保存数据库中键值对:集群的整个数据库被分为16384个槽(slot),数据库中的每个键都属于这16384个槽的其中一个,集群中的每个节点可以处理0个或者最多16384个槽  当数据库中的16384个槽都有节点在处理时,集群处于上线状态(ok);相反地,如果数据库中有任何一...

Redis线程模型

redis内部使用文件事件处理器fileeventhandler,这个文件事件处理器是单线程的,所以redis才叫做单线程的模型。它采用IO多路复用机制同时监听多个socket,根据socket上的事件来选择对应的事件处理器进行处理。Redis基于Reactor模式开发了自己的网络事件处理器。被称为文件事件处理器,由于...
代码星球·2020-12-10

【Redis实战】双写一致性问题和解决方案

1、读:(1)先读cache,如果数据命中则返回(2)如果数据未命中则读db(3)将db中读取出来的数据入缓存2、写:(1)先淘汰cache(2)再写db  先操作缓存,在写数据库成功之前,如果有读请求发生,可能导致旧数据入缓存,引发数据不一致。  在分布式环境下,数据的读写都是并发的,上游有多个应用,通过一个服务的多...

大厂面试官喜欢这样问Redis,双写一致性、并发竞争、线程模型,我整理好了

上几期吊打系列我们提到了Redis的很多知识,还没看的小伙伴可以回顾一下《吊打面试官》系列-Redis基础《吊打面试官》系列-缓存雪崩、击穿、穿透《吊打面试官》系列-Redis哨兵、持久化、主从、手撕LRU那提到Redis我相信各位在面试,或者实际开发过程中对基本类型的使用场景,并发竞争带来的问题,以及缓存数据库双写入...

死磕 Redis- 布隆过滤器

 在讲述布隆过滤器的原理之前,我们先思考一个问题,如果想要判断一个元素是否存在,你通常会怎么做?一般的做法都是将其保存起来然后通过比较确认,一共会有如下几种情况:如果使用线性表或者数组存储,则查找的时间复杂度为O(n)。如果使用树存储,则查找的时间复杂   度为O(logn)。如...

关于redis,你需要了解的几点!

 1、是二进制安全的,也就是说,你可以使用任何形式的二进制序列来作为key,比如一个string,或者一个jpg图片的数据,需要说明的是,空字符串也是一个有效的key。2、不建议使用过长的key,影响内存占用及数据查性能,对于过长的key,可以通过hash(例如SHA1)处理转换。3、建议使用有意义及统一格式...

SDS Redis 自定义字符串底层结构

 Redis自定的字符串存储结构,关于redis,你需要了解的几点!中我们对此有过简要说明。Redis底层是用C语言编写的,可是在字符存储上,并未使用C原生的String类型,而是定义了自己的字符串结构SimpleDynamicStirng,简称SDS。SDS基本结构如下:structsdshdr{intle...

redis中5种数据类型的底层数据结构

阅读 redis设计与实现 一书的记录。未完待续。。。redis我们都知道有5种数据类型,分别是string,list,hash,set,zset,那么你知道它们的底层数据结构实现吗?redis底层有6种数据结构,分别是简单动态字符串(SDS),链表,字典,跳跃表,整数集合,压缩列表。每种数据类型都...

redis的底层数据结构

1、演示数据类型的实现2、简单动态字符串3、链表4、字典5、跳跃表6、整数集合7、压缩列表8、总结   上一篇博客我们介绍了 redis的五大数据类型详细用法,但是在Redis中,这几种数据类型底层是由什么数据结构构造的呢?本篇博客我们就来详细介绍Redis中五大数据类型的底层实现。回到顶部1、演示...
代码星球·2020-12-10

Redis 的 IO 多路复用,学习研究

操作系统操作系统本身可以看做一个特殊的软件,只有操作系统能直接接触计算机硬件,其他软件要访问硬件都必须通过操作系统操作系统对硬件做抽象,封装接口给软件调用程序员↓软件↓操作系统(在内存中)↓IO设备(网卡、磁盘、键盘、鼠标等) 常见的操作系统有:Windows、Linux、Mac内核和用户空间首先,内核和用户...

Redis性能为什么这么好?IO多路复用模型了解下

当我们去面试的时候,问到了redis,nginx,netty他们的底层模型分别是什么?❝redis->epollnginx->epollnetty->epoll❞需要从操作系统的层面上来谈当我们开机的时候,首先被加载进内存的是我们的Kernel(内核),内核是用于管理我们的硬件的,同时内核还会创建一个...