• 什么是Redis?

  Remote Dictionary Server

 Redis本质上是一个Key-value类型的内存数据库,很像memcached,整个数据库加载在内存当中进行操作,定期通过异步操作把数据库数据flush到硬盘上进行保存。因为是纯内存操作,Redis的性能非常出色,每秒可以处理超过十万次的读写操作,是一只性能最快的Key-Value DB。

  Redis的出色之处不仅仅是性能,Redis最大的魅力是支持保存多种数据结构,此外单个value的最大限制是1GB,不像memcached只能保存1MB的数据,因此Redis可以用来实现很多有用的功能。

  • Redis相比memcached有哪些优势?

    • memcached所有的值均是简单的字符串,redis作为其替代者,支持更为丰富的数据类型
    • redis的速度比memcached快很多
    • redis可以持久化其数据
  • Redis支持哪几种数据类型

  String、List、Set、Sorted Set、hashes

  • Redis消耗什么无力资源?

  消耗内存

  • Redis有哪几种数据淘汰策略

    • noeviction:返回错误当内存限制达到并且客户端尝试执行会让更多内存被使用的命令
    • allkeys-Iru:尝试回收最少使用的键(LRU),使得新添加的数据有空间存放。
    • volatile-Iru:尝试回收最少使用的键(LRU),但仅限于在过期集合的键,使得新添加的数据有空间存放
    • allkeys-random:回收随机的键使得新添加的数据有空间存放
    • volatile-ttl:回收在过期集合的键,并且优先回收存活时间(TTL)较短的键,是的新添加的数据有空间存放
  • 为什么Redis需要将所有的数据存放到内存中?

  Redis为了达到最快的读写速度将数据都读到内存中,并通过异步的方式将数据写入磁盘。所以reids具有快速和数据持久化的特征。如果不将数据存放到内存中,磁盘I/O速度为严重影响reids的性能。如果设置了最大使用内存,则数据已有记录数达到内存限值后不能继续插入新值。

  • Redis有哪些适合的场景?

    • 会话缓存(Session Cache):最常用的一种使用redis的情景是会话缓存。用redis缓存会话比其他存储的优势在于:Redis提供持久化。
    • 全页缓存(FPC):除基本的会话token之外,Redis还提供很简单的FPC平台。即使重启了Redis的实力,因为有磁盘的持久化,用户也不会看到页面加载速度的下降。
    • 队列:Redis在内存存储引擎领域提供list和set操作,这使得Redis能作为一个很好的消息队列平台来使用。redis作为队列使用的操作,就类似于本地程序语言对list的push/pop操作。
    • 排行榜/计数器:Redis在内存中对数字进行递增或递减的操作实现的非常好。集合(Set)和有序集合也使这些操作变得简单,redis正好提供了这两种数据结构。
    • 发布/订阅
  • Redis和Redission的关系

  Redission是一个高级的分布式协调Redis客户端,能帮助用户在分布式环境中轻松实现一些java的对象(Bloom,filter,BitSet, Set, SetMultimap, ScoredSortedSet, SortedSet, Map, ConcurrentMap, List, ListMultimap, Queue, BlockingQueue, Deque, BlockingDeque, Semaphore, Lock, ReadWriteLock, AtomicLong, CountDownLatch, Publish / Subscribe, HyperLogLog)。

  • Redis设置密码及验证码

  设置密码:config set requirepass 123456

  授权密码:auth 123456

  • Redis事物相关的命令有哪几个?

  MULTI、EXEC、DISCARD、WATCH

  • Redis回收使用的是什么算法?

  LRU算法

  • 为什么要做Redis分区?

  分区可以让Redis管理更大的内存,Redis将可以使用所有机器的内存。如果没有分区,你最多只能使用一台机器的内存。分区使Redis的计算能力通过简单地增加计算机得到成倍提升,Redis的网络带宽也会随着计算机和网卡的增加而成倍增长。

  • 有哪些Redis分区实现方案?

    • 客户端分区就是在客户端就已经决定数据会被存储到哪个redis节点或者从哪个redis节点读取。大多数客户端已经实现了客户端分区。

    • 代理分区 意味着客户端将请求发送给代理,然后代理决定去哪个节点写数据或者读数据。代理根据分区规则决定请求哪些Redis实例,然后根据Redis的响应结果返回给客户端。redis和memcached的一种代理实现就是Twemproxy

    • 查询路由(Query routing) 的意思是客户端随机地请求任意一个redis实例,然后由Redis将请求转发给正确的Redis节点。Redis Cluster实现了一种混合形式的查询路由,但并不是直接将请求从一个redis节点转发到另一个redis节点,而是在客户端的帮助下直接redirected到正确的redis节点。

  • Redis分区有什么缺点?
    • 涉及多个key的操作通常不会被支持。例如不能对两个集合求交集,因为他们可能被存储到不同的Redis实例。
    • 同时操作多个key,不能使用Redis事物
    • 分区使用的粒度是key,不能使用一个非常长的排序key存储一个数据集
    • 当使用分区的时候,数据处理会非常复杂。因为为了备份你必须从不同的redis实例和主机同时收集RDB/AOF文件
    • 分区时动态扩容或缩容可能会非常复杂。
  • redis持久化数据和缓存怎么做扩容?
    • 如果redis当作缓存使用,使用一只性哈希实现动态扩容缩容
    • 如果redis被当作一个持久化存储使用,必须使用固定的keys-to-nodes映射关系,节点的数量一旦确定不能变化。否则的话(即Reids节点需要动态变化的情况),必须使用可以在运行时进行时进行数据在平衡的一套系统,而当前只有redis集群可以做到这样。
  • Redis是单线程的,如何提高多核CPU的利用率?

  可以在同一个服务器部署多个redis的实例,并把他们当作不同的服务器来使用,在某些时候,一个服务器是不够的,所以如果你想使用多个CPU,可以考虑一下分片(shard)。

Redis-敲黑板划重点相关推荐

  1. 敲黑板 划重点 网络安全体系的9大知识点都在这里

    敲黑板 划重点 网络安全体系的9大知识点都在这里 首席数字官 2020-09-25 18:21:05 文丨赵博智 编辑丨秦丽 来源丨首席数字官 在新基建浪潮之下,云计算.大数据.物联网.人工智能为代表 ...

  2. python使用redis教程 敲黑板划重点

    WIN7 python使用Redis 目标: 连接池连接redis: redis基本命令: String类型的处理命令 hash类型的处理命令 list类型的处理命令 set类型的处理命令 有序set ...

  3. 敲黑板划重点!「PV,UV流量预测算法大赛」明日结果提交最后1天!

    大赛背景 伴随着5G.物联网与大数据形成的后互联网格局的逐步形成,日益多样化的用户触点.庞杂的行为数据和沉重的业务体量也给我们的数据资产管理带来了不容忽视的挑战. 为了建立更加精准的数据挖掘形式和更加 ...

  4. 盘点《令人心动的offer》中让人敲黑板的重点

    1.职场救命千千万,自动保存占一半. 节目第一期,李晋晔在撰写书面报告时提前设置好了文档的自动保存时间,这一小细节让无数网友直呼:细节控,爱了爱了. 确实对于职场人来说,救命法宝千千万,自动保存占一半 ...

  5. 敲黑板!2021入学复旦MBA最后一场公开课,重点就在这里!

    2020年9月26日,2021年入学复旦MBA最后一场公开课暨招生宣讲会在"云端"开启.从互联网巨头的透彻分析.项目的全方位速览到招生政策和全国联考报名的官方划重点,为考生带来超越 ...

  6. 大一c语言知识点总结树状图,AK宝典丨哟,写bug呐?19级数据结构满分dalao在线帮你划重点!...

    原标题:AK宝典丨哟,写bug呐?19级数据结构满分dalao在线帮你划重点! 这是 北航士谔书院的第 1482篇推送 经过寒假的预习 你一定对 春季学期的课程 有了十足的底气和信心了吧? 你心目中最 ...

  7. 划重点,2021 常见的面试题和八股文都为大家总结出来了

    今年的秋招基本已经进入大规模的开奖季了,很多小伙伴收获不错,拿到了心仪的 offer. 各大论坛和社区里也看见不少小伙伴慷慨地分享了常见的面试题和八股文,为此咱这里也统一做一次大整理和大归类,这也算是 ...

  8. 各类型土地利用图例_划重点!国土空间总体规划——土地利用

    四.土地利用 (一) ​土地利用是否协调匹配 国土空间规划的要素和资源,最终都要落到土地上,土地利用自然成为国土空间规划需要研究的关键问题.所谓土地利用,是指人类通过特定的行为,以土地作为劳动对象或手 ...

  9. 划重点!十分钟掌握牛顿法凸优化

    AI有道 一个有情怀的公众号 之前,我发过一篇文章,通俗地解释了梯度下降算法的数学原理和推导过程,推荐一看.链接如下: 简单的梯度下降算法,你真的懂了吗? 我们知道,梯度下降算法是利用梯度进行一阶优化 ...

最新文章

  1. sudami和achillis对初学者的建议
  2. 阿里有一帮吃货工程师,在食堂玩起了“黑科技”
  3. 多给明年留些钱 明年必将要火的好手机
  4. qt.targets(66,3):元素<Import>中的“Project”特性的值无效
  5. matlab 矢量化,matlab矢量化编程简要
  6. 取出字符串strName前4个汉字
  7. 20161018复习笔记
  8. 搭建Windows red5流媒体服务器详解
  9. 海康存储硬盘盒开箱+小螃蟹RTL9210固件更新+量产软件下载
  10. 高德经纬度转普通GPS经纬度
  11. 数学建模:线性规划—投资的收益和风险模型 (Python 求解)
  12. 机房怎么制作服务器,电信服务器机房服务器搬迁地网制作方法
  13. Enter键绑定按钮或方法
  14. 通过官网怎么查找联盟申请链接
  15. 135、易燃液体的火灾危险性
  16. 达人评测 i5-1155g7和i5-1235u选哪个 i51155g7和1235u差距
  17. App Store Connect显示app已经上架(可供销售),但在App Store中没有实时更新
  18. Ubuntu使用备忘
  19. 东南大学计算机考研信息汇总
  20. DriverDrowsiness_Detection fatigue

热门文章

  1. 大数据哪个省才是高考地狱_是一名数据科学家,确实是地狱附近最性感的工作...
  2. 解决Ubuntu18.04不能用Xshell使用root用户登录
  3. APP网络测试要点及弱网模拟
  4. python采集链家二手房信息
  5. 一楼二楼教师办公室图书馆操场计算机房,人教版PEP版四年级下册Unit1-Unit6课前知识预习...
  6. 判断浏览器是否是 IE 及 IE8 以下版本
  7. 计算机与智能科学专业大学排名,智能科学与技术专业大学排名 2020全国排行榜...
  8. PyGmae:有限状态机实践(十四)
  9. Silverlight的未来[译文]
  10. 由于计算机主板的闪烁存储器中固化了,(大学信息技术题型整理.doc